【问题标题】:How do I make the cmd take arrow input in C#? [closed]如何使 cmd 在 C# 中接受箭头输入? [关闭]
【发布时间】:2013-09-10 19:44:20
【问题描述】:

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

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

我以前看过,但我不记得在哪里,所以有人可以帮助我吗?

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

【问题讨论】:

  • 你看过这篇关于击键和鼠标事件的文章吗? codeproject.com/Articles/7294/…
  • @DavidStratton 是的,我确定
  • @Alexei Levenkov,但是您将如何使用阻塞的 readkey 更新屏幕?蛇必须继续前进:)
  • @Silvermind 使用标准游戏循环 - while(true){if (KeyAvaialble) ReadKey; UpdateState; DrawScreen;Sleep }

标签: c# cmd key console-application


【解决方案1】:

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

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

箭头键的代码为ConsoleKey.UpArrowConsoleKey.DownArrowConsoleKey.LeftArrowConsoleKey.RightArrow

【讨论】:

  • 这个答案太简单了,我什至羞于问这个问题......
  • +1。你需要在ReadKey之前使用Console.KeyAvailable...
猜你喜欢
  • 2014-05-10
  • 2016-09-22
  • 1970-01-01
  • 2020-04-25
  • 2020-09-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-01-24
相关资源
最近更新 更多