KeyboardState.GetPressedKeys()
gibt% co_de zurück % Array der aktuell gedrückten Tasten. Normalerweise würde ich Key
herausfinden, wenn ein Schlüssel ein Buchstabe oder eine Zahl ist Der angegebene Typ ist der Char.IsLetterOrDigit(char)
-Enumeration und hat daher keine Keys
-Eigenschaft.
Casting funktioniert auch nicht, weil zum Beispiel Schlüssel wie KeyChar
, wenn sie an ein Zeichen übergeben werden, zum Buchstaben Keys.F5
werden. In diesem Fall würde t
dann als ein Buchstabe oder eine Ziffer angesehen, wenn dies eindeutig nicht der Fall ist.
Also, wie könnte man feststellen, ob ein gegebener F5
Aufzählungswert ein Buchstabe oder eine Ziffer ist, da das Umsetzen auf ein Zeichen unvorhersagbare Ergebnisse liefert?
Lassen Sie Ihre eigene Tabelle / Gruppe von HashSets den% type% enumerationen zuordnen, an denen Sie interessiert sind.
Es gibt nur ungefähr hundert verschiedene Werte - der Tisch wird also nicht zu groß sein. Wenn Sie sich Gedanken über die Größe im Speicher machen, ist dies ein Byte pro Aufzählungswert (wenn Sie ein Byte-Array verwenden, das mit Keys
-Werten indiziert ist).