Java에서 키 입력을 모니터링하는 방법
Java에서 키 입력을 감지하려면 특정 키가 명시적으로 확인되는지 확인하는 대신 KeyEvents를 "수신"해야 합니다. 눌렀습니다. 지속적인 키 입력 모니터링을 달성하는 방법은 다음과 같습니다.
의사 코드에서 원하는 기능은 다음과 같이 해석됩니다.
if (isPressing("w")) { // perform an action }
키 입력 모니터링 구현:
To 키 입력을 모니터링하려면 KeyEventDispatcher를 등록해야 합니다. 구현은 다음과 같습니다.
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; } } }); } }
사용법:
KeyEventDispatcher가 등록되면 다음을 사용하여 키 상태를 확인할 수 있습니다.
if (IsKeyPressed.isWPressed()) { // take desired action }
여러 키:
여러 키를 모니터링하려면 IsKeyPressed 클래스를 확장하여 키 맵과 해당 상태를 포함할 수 있습니다.
위 내용은 Java에서 키 입력을 지속적으로 모니터링하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!