Оба Console.Read()
и Console.ReadKey()
, похоже, ждут нажатия клавиши. Как я могу определить, было ли что-нибудь нажато, не попросив программу ждать нажатия клавиши?
С#: проверьте, не нажата ли какая-либо клавиша в консоли
Ответ 1
Вы можете опросить Console.KeyAvailable, чтобы узнать, можете ли вы что-нибудь прочитать.
Ответ 2
Вы хотите изучить использование обработчиков событий. Для использования форм Windows следующее должно быть полезно. Событие Control.Keypress(System.Windows.Forms). Для хорошего обзора обработчиков событий в общем случае посмотрите EventHandling в .NET с использованием С#.
Для консольного приложения вы должны заглянуть в функцию Console.CancelKeyPress Event
.
Ответ 3
Просто добавьте следующее, где вы хотите подождать:
while (!Console.KeyAvailable) {}