Как предотвратить отключение NumLock?
Я делаю простую игру и хочу управлять ею с помощью цифровой клавиатуры (включая клавишу NumLock). Игрок должен иметь возможность нажать несколько клавиш одновременно или нажать и удерживать любую клавишу.
После нажатия клавиши NumLock необходимо снова включить NumLock через Toolkit.getDefaultToolkit().setLockingKeyState(KeyEvent.VK_NUM_LOCK, Boolean.TRUE)
чтобы VK_NUMPADx
клавиши не перестают реагировать на нажатия.
Проблема с таким подходом заключается в том, что setLockingKeyState
кажется подражать VK_NUM_LOCK
Нажмите. Так keyPressed
а также keyReleased
Вызываются дважды: один раз для пользовательского ввода и один раз для включения NumLock (при необходимости). Когда вы нажимаете и удерживаете NumLock, он постоянно включается и выключается.
Как я могу избежать такого поведения и заставить NumLock работать как любой другой ключ?