PDA

View Full Version : ‍‍‍‍‍‍ﭘیاده سازی حرکت ماشین در سی شارپ



sddban
دوشنبه 04 شهریور 1392, 10:59 صبح
با سلام
به یه سوال خفن برخورد کردم (‌البته برا من که تازه کارم )
گفتم یه کمکی بگیرم از استادان اینجا شاید بتونم حل کنم
سوال اینه که باید حرکت یه ماشین (‌که برای ماشین یه نماد باید داشته باشیم مثل این *.ـ***ـ*)
یعنی وقتی دکمه جلو رو می زنیم ماشین جلو تر بره و برعکس همین
با استفاده از کلاس ها و interface ها ...

aliagamon
دوشنبه 04 شهریور 1392, 11:13 صبح
تو کنسول یا ویندوز فرم؟
تو ویندوز فرم میتونی تو روداد های keydown فرم بنویسی...مثلا پیکچرباکس جا به جا بشه..

sddban
دوشنبه 04 شهریور 1392, 11:22 صبح
تو کنسول باید باشه

sddban
دوشنبه 04 شهریور 1392, 13:18 عصر
دوستان عزیز کسی نیست جواب سوال منو بده ‌؟

aliagamon
دوشنبه 04 شهریور 1392, 13:20 عصر
شرط ها اینطوری نویشته میشن:

ConsoleKeyInfo keyInfo = Console.ReadKey();
if (keyInfo.Key == ConsoleKey.RightArrow)
{
//Dastor harekat be samte rast
}
else if(keyinfo.Key == ConsoleKey.Harchi_ke_mikhay)
{
//....
}

فکر کنم بتونی مستقیم بدون KeyInfo هم شرط بنویسی اینطوری:

System.Console.ReadKey(true).Key == ConsoleKey.RightArrow

aliagamon
دوشنبه 04 شهریور 1392, 13:31 عصر
بیا اینو نوشتم برایت:

Console.WriteLine("|-MyCar-|<");
//ConsoleKeyInfo keyInfo = Console.ReadKey();
int marg = 0;
while (true)
{
ConsoleKeyInfo keyInfo = Console.ReadKey();
if (keyInfo.Key == ConsoleKey.RightArrow)
{
Console.Clear();
for (int i = 0; i <= marg; i++)
Console.Write("\t");
Console.Write("|-MyCar-|<");
marg++;

}
else if (keyInfo.Key == ConsoleKey.LeftArrow)
{
Console.Clear();
for (int i = 0; i < marg; i++)
Console.Write("\t");
Console.Write("|-MyCar-|<");
marg--;
}

بالا و پایین رو هم خودت درست کن

sddban
دوشنبه 04 شهریور 1392, 13:47 عصر
ایده جالبی بود
با تشکر