0

所以让我们使用这段代码:

Console.ReadKey(true);
//Cancel the ReadKey prompt
Console.WriteLine("ReadKey was cancelled.");

运行程序后,唯一应该发生的是输出ReadKey was cancelled.应该出现。我怎样才能做到这一点?甚至可能吗?

提前致谢。

4

2 回答 2

3

除非您中止线程,否则您无法取消 ReadKey。(强制关闭程序。)

Console.KeyAvailable在调用 ReadKey 之前,我使用该属性检查密钥是否可用。

于 2013-08-18T21:40:41.380 回答
1

我能看到你可以做到这一点的唯一方法是使用 System.Windows.Forms.SendKeys.Send(),但是这对于控制台应用程序来说是“开箱即用”的,因为它们不管理 Windows 消息,如果您尝试一下,您会看到异常。可能有一种方法可以使用 Windows API 自己实现这一点。

于 2013-09-03T10:20:49.493 回答