C#:检查控制台中是否按下了任何键

Console.Read()Console.ReadKey()似乎都在等待按下某个键。 如果没有实际要求程序等到按下某个键,我如何检测是否有任何按下?

您可以在Console.KeyAvailable上进行轮询,以了解您是否可以阅读任何内容。

您想要研究使用事件处理程序。 对于使用Windows表单,以下内容应该会有所帮助。 Control.Keypress事件(System.Windows.Forms) 。 有关一般事件处理程序的概述,请使用C#查看.NET中的EventHandling 。

对于控制台应用程序,您应该查看Console.CancelKeyPress Event函数。

只需在您想要等待的位置添加以下内容:

 while (!Console.KeyAvailable) {}