0

我通常Console.ReadLine();用来捕获单个击键。但是这个函数会阻止执行并一直等待它发生。

是否有可能在循环内捕获它,如果它被按下并继续执行,如果它不是?

最好的是类似于 GUI 应用程序的东西,它会继续运行,并且只要执行快捷方式,它就会被拦截并引发事件以被捕获。但我怀疑控制台应用程序能够做到这一点。

第二个最佳解决方案是Console.ReadLine();等待 1 秒然后返回。如果在调用函数时用户按住键盘按钮,则函数识别击键并返回其字符,否则函数返回 null。

4

1 回答 1

1

您是否阅读了控制台的 MSDN 按键信息

您可以使用Console.KeyAvailable来确定您是否真的想要获取队列中的密钥。

于 2015-08-10T13:36:46.933 回答