2016-09-27 64 views
1

我遇到了ConsoleKeyInfo的一個非常愚蠢的問題。我想檢查是否使用數字鍵盤或常規頂級數字鍵輸入「1」。如何使用ConsoleKeyInfo檢查是否有2個可能的鍵被按下?

ConsoleKeyInfo keyPressed; 
keyPressed = Console.ReadKey(); 
if (keyPressed = ConsoleKey.D1 || keyPressed = ConsoleKey.NumPad1) 
{ } 

由於某種原因,我不能使用「||」運營商。如果循環沒有使用Console.ReadLine();並強制用戶按回車,是否有可能以某種方式在1內檢查它?

回答

5

你必須compare==而不是=。 否則你正在嘗試賦值。

而且你必須比較ConsoleKeyInfoKey財產,該財產包含ConsoleKey枚舉。

所以你if應該是這樣的:

if (keyPressed.Key == ConsoleKey.D1 || keyPressed.Key == ConsoleKey.NumPad1) 
相關問題