Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使cmd在C#中接受箭头输入?_C#_Cmd_Key_Console Application - Fatal编程技术网

如何使cmd在C#中接受箭头输入?

如何使cmd在C#中接受箭头输入?,c#,cmd,key,console-application,C#,Cmd,Key,Console Application,我想给自己一个有趣的小挑战,用C#编写一个Snake(诺基亚风格)游戏,让事情变得更难,我想让它基于文本,只使用终端 我的第一个绊脚石是,为了让游戏可以玩,我需要能够使用箭头键移动蛇头,从而让其余的蛇跟随 我以前看过,但我不记得在哪里,有人能帮我吗 请注意,这是一个特定的编程问题,因为我不确定要使用什么类或如何使用它们。您可以使用ReadKey()方法在控制台中处理箭头输入 var key = Console.ReadKey().Key; if (key == ConsoleKey.DownAr

我想给自己一个有趣的小挑战,用C#编写一个Snake(诺基亚风格)游戏,让事情变得更难,我想让它基于文本,只使用终端

我的第一个绊脚石是,为了让游戏可以玩,我需要能够使用箭头键移动蛇头,从而让其余的蛇跟随

我以前看过,但我不记得在哪里,有人能帮我吗


请注意,这是一个特定的编程问题,因为我不确定要使用什么类或如何使用它们。

您可以使用
ReadKey()
方法在控制台中处理箭头输入

var key = Console.ReadKey().Key;
if (key == ConsoleKey.DownArrow)
   Console.WriteLine("Down arrow pressed");

箭头键有代码
ConsoleKey.UpArrow
ConsoleKey.downarow
ConsoleKey.LeftArrow
ConsoleKey.RightArrow

你看过这篇关于击键和鼠标事件的文章吗?看@DavidStratton是的,我是sure@AlexeiLevenkov,但是你如何用一个阻止读键来更新屏幕呢?蛇必须继续:)@Silvermind使用标准的游戏循环-
而(true){if(keyavavaailable)ReadKey;UpdateState;DrawScreen;Sleep}
。这个答案很简单,我几乎羞于问这个问题……+1。您需要在
ReadKey
之前使用。。。