我正在編寫一個控制檯應用程序witch在控制檯屏幕上顯示某些數據,而不是從鍵盤檢查用戶輸入並最終按需處理它。所有單線程。在C#控制檯應用程序中使用Keyboard.IsKeyDown
爲此,我嘗試從System.Windows.Input命名空間使用Keyboard.IsKeyDown方法。和視覺工作室wo'nt允許它。 有誰知道爲什麼,可以幫助我嗎? 我沒有看到其他方式實現該邏輯使用只有一個線程和沒有計時器。
我正在編寫一個控制檯應用程序witch在控制檯屏幕上顯示某些數據,而不是從鍵盤檢查用戶輸入並最終按需處理它。所有單線程。在C#控制檯應用程序中使用Keyboard.IsKeyDown
爲此,我嘗試從System.Windows.Input命名空間使用Keyboard.IsKeyDown方法。和視覺工作室wo'nt允許它。 有誰知道爲什麼,可以幫助我嗎? 我沒有看到其他方式實現該邏輯使用只有一個線程和沒有計時器。
使用Console.ReadKey()
在控制檯應用程序中讀取來自鍵盤的輸入。
請注意,這是一個阻塞呼叫。如果您不想阻止,請聯繫Console.KeyAvailable
。例如,如果每10秒鐘按一次按鍵,該程序將循環顯示:
static void Main(string[] args)
{
do
{
if (Console.KeyAvailable)
{
var key = Console.ReadKey();
Console.WriteLine(key.Key);
}
else
{
Console.WriteLine("No key pressed");
}
System.Threading.Thread.Sleep(100);
} while (true);
}
在控制檯應用程序中輪詢鍵盤需要Console.KeyAvailable。 –