Heim >Java >javaLernprogramm >Wie überwacht man Tastenanschläge in Java kontinuierlich?
So überwachen Sie Tastenanschläge in Java
In Java umfasst das Erkennen von Tastenanschlägen das „Abhören“ von KeyEvents, anstatt explizit zu prüfen, ob ein bestimmter Schlüssel vorhanden ist gedrückt. So können Sie eine kontinuierliche Tastenanschlagsüberwachung erreichen:
Im Pseudocode bedeutet Ihre gewünschte Funktionalität:
if (isPressing("w")) { // perform an action }
Implementieren der Tastenanschlagsüberwachung:
Zu Um Tastenanschläge zu überwachen, müssen Sie einen KeyEventDispatcher registrieren. Hier ist eine Implementierung:
import java.awt.KeyEventDispatcher; import java.awt.KeyboardFocusManager; import java.awt.event.KeyEvent; public class IsKeyPressed { private static volatile boolean wPressed = false; public static boolean isWPressed() { synchronized (IsKeyPressed.class) { return wPressed; } } public static void main(String[] args) { KeyboardFocusManager.getCurrentKeyboardFocusManager().addKeyEventDispatcher(new KeyEventDispatcher() { @Override public boolean dispatchKeyEvent(KeyEvent ke) { synchronized (IsKeyPressed.class) { switch (ke.getID()) { case KeyEvent.KEY_PRESSED: if (ke.getKeyCode() == KeyEvent.VK_W) { wPressed = true; } break; case KeyEvent.KEY_RELEASED: if (ke.getKeyCode() == KeyEvent.VK_W) { wPressed = false; } break; } return false; } } }); } }
Verwendung:
Sobald der KeyEventDispatcher registriert ist, können Sie den Status eines Schlüssels überprüfen mit:
if (IsKeyPressed.isWPressed()) { // take desired action }
Mehrere Schlüssel:
Um mehrere Schlüssel zu überwachen, können Sie Erweitern Sie die IsKeyPressed-Klasse um eine Karte der Tasten und ihrer jeweiligen Zustände.
Das obige ist der detaillierte Inhalt vonWie überwacht man Tastenanschläge in Java kontinuierlich?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!