PDA

View Full Version : سوال: Button برای کنسول



Arash.M
چهارشنبه 01 مهر 1388, 06:49 صبح
ممکنه دوستان عزیز محبت کنند و یک کامپوننت به عنوان Button برای کنسول معرفی کنند که رویداد کلیک با ماوس را داشته باشه و یا دوستان حرفه ای راهنمایی کنند که چطور میشه یک Button برای Console ساخت.

پیشاپیش از همه متشکرم

alireza_tavakol
چهارشنبه 01 مهر 1388, 08:45 صبح
ممکنه دوستان عزیز محبت کنند و یک کامپوننت به عنوان Button برای کنسول معرفی کنند


:متعجب:
بعید می دونم بشه با کامپوننت ها توی محیط کنسول کار کرد

چطور میشه یک Button برای Console ساخت.


من قبلا" توی محیط DOS توسط الگوریتم زیر دکمه ها رو شبیه سازی میکردم . شاید به دردت بخوره
using System;
using System.Text;

namespace button
{
class Program
{
static void GotoXY(int left, int top)
{
Console.CursorLeft = left;
Console.CursorTop = top;
}
static void cout(string text, int top)
{
int len = text.Length;
int left = (80 - len) / 2;
GotoXY(left, top);
Console.Write(text);
}
static void menu(int selectIndex)
{
Console.BackgroundColor = ConsoleColor.Black;
Console.ForegroundColor = ConsoleColor.White;
cout("Welcome To My Program", 2);

Console.ForegroundColor = ConsoleColor.Yellow;
switch (selectIndex)
{
case 0:
{
Console.BackgroundColor = ConsoleColor.Red;
cout("Insert", 10);
Console.BackgroundColor = ConsoleColor.Blue;
cout(" Edit ", 12);
cout("Delete", 14);
cout(" Exit ", 16);
break;
}
case 1:
{
Console.BackgroundColor = ConsoleColor.Blue;
cout("Insert", 10);
Console.BackgroundColor = ConsoleColor.Red;
cout(" Edit ", 12);
Console.BackgroundColor = ConsoleColor.Blue;
cout("Delete", 14);
cout(" Exit ", 16);
break;
}
case 2:
{
Console.BackgroundColor = ConsoleColor.Blue;
cout("Insert", 10);
cout(" Edit ", 12);
Console.BackgroundColor = ConsoleColor.Red;
cout("Delete", 14);
Console.BackgroundColor = ConsoleColor.Blue;
cout(" Exit ", 16);
break;
}
case 3:
{
Console.BackgroundColor = ConsoleColor.Blue;
cout("Insert", 10);
cout(" Edit ", 12);
cout("Delete", 14);
Console.BackgroundColor = ConsoleColor.Red;
cout(" Exit ", 16);
break;
}
}

}
static void Main(string[] args)
{
ConsoleKeyInfo kp;
int selectIndex = 0;
do
{
Console.BackgroundColor = ConsoleColor.Black;
Console.Clear();
menu(selectIndex);
kp= Console.ReadKey();
if (kp.Key == ConsoleKey.UpArrow)
if (selectIndex == 0)
selectIndex = 3;
else
selectIndex--;
if (kp.Key == ConsoleKey.DownArrow)
if (selectIndex == 3)
selectIndex = 0;
else
selectIndex++;

} while (kp.Key != ConsoleKey.Enter);

Console.BackgroundColor = ConsoleColor.Black;
Console.Clear();
switch (selectIndex)
{
case 0:
{
cout("you selected item insert", 20);
//call insert
break;
}
case 1:
{
cout("you selected item edit", 20);
//call edit
break;
}
case 2:
{
cout("you selected item delete", 20);
//call delete
break;
}
case 3:
{
cout("you selected item exit", 20);
//call exit
break;
}

}
Console.ReadLine();
}
}
}

mahdi_7610
چهارشنبه 01 مهر 1388, 09:51 صبح
سلام

فکر کنم این قبیل کارها مربوط به c++ و محیط داس بود .

محیط کنسول یک محیط text ui هستش . دقیق نمیدونم ولی به نظر این قابلیتها را ازش گرفتن .

Asad.Safari
چهارشنبه 01 مهر 1388, 10:33 صبح
کنسول یعنی ورودی و خروجی استاندارد و موس که استاندارد نیست و این کیبورد است که استاندارد است

Arash.M
جمعه 03 مهر 1388, 23:13 عصر
خیلی ممنون از همه به ویژه از علیرضای عزیز. هر چند که به چیزی که دقیقا می خواستم نرسیدم ولی این راهنمایی خیلی خوبی بود. راستش من دارم یک منوی کامل شامل MenuStrip و Menu و MenuItems برای کنسول می سازم. خیلی ممنون