Я пытаюсь сделать что-то вроде текстового поля hotkey. Пользовательские нажатия F11/Caps lock/любая клавиша и появляется в коробке. Я сделал это так:Нажата кнопка как горячая клавиша
@Override
public void keyPressed(KeyEvent e) {
textField_1.setText(String.valueOf(e.getKeyChar()));
}
, но он не работает для Fs, крышки блокировки и т.д. (что очевидно, потому что это не те символы). Как я могу справиться с этой проблемой?
Вот и все! Спасибо :-) –
Вы не должны изменять текстовое поле из прослушивателя клавиш, кроме того, что он может вызывать ошибки одновременной модификации, нет никакой гарантии, в каком порядке уведомляются ключевые слушатели, и ключ может быть использован до вас , Гораздо лучше использовать DocumentFilter и KeyBindings - IMHO – MadProgrammer