Все примеры для ключевых слушателей, которые я смог найти, касаются других компонентов, помимо основной панели, таких как текстовое поле или Меню.Я знаю, как использовать setMnemonic для программирования горячих клавиш меню, но этот метод, по-видимому, недоступен, и ссылка на руководство по созданию списка ключей оракула не работает.Когда я щелкаю правой кнопкой мыши> События> Клавиша> Нажатие клавиши в главной форме, я получаю следующее, но ни одна из клавиш не вызывает mainPanelKeyPressed.
Как правильно использовать события клавиш для запуска действия, независимого от фокуса?
mainPanel.addKeyListener(new java.awt.event.KeyAdapter() {
public void keyPressed(java.awt.event.KeyEvent evt) {
mainPanelKeyPressed(evt);
}
});
private void mainPanelKeyPressed(java.awt.event.KeyEvent evt) {
// Added to help find the ID of each 'arrow' key
JOptionPane.showMessageDialog(null, "mainPanelKeyPressed");
}