Почему KeyEvent.VK_PLUS не работает в Java?
У меня есть JMenuItem, а у JMenuItem есть Слушатель. Если я нажму на JMenuItem, метод заработает. Также ещё есть JTextArea у которого стоит слушатель клавиш.
Если я нажму на клавиатуре ctrl + Plus то метод работать не будет. Также есть комбинация клавиш ctrl + Minus которая работает.
В чём проблема?
Код:
jta.addKeyListener(new KeyListener() {
public void keyTyped(KeyEvent e) {
}
@Override
public void keyPressed(KeyEvent e) {
if (e.getKeyCode() == KeyEvent.VK_PLUS && e.isControlDown()) {
zoomplus();
}
}
@Override
public void keyReleased(KeyEvent e) {
}
});
PS: вставил только тот кусок кода который не работает.
Ответы (1 шт):
Автор решения: Agzam4
→ Ссылка
Все просто - Вы нажимаете не ctrl + "+", а ctrl + "="
(как Вы знаете, что бы была кнопка +, надо нажать shift)
Что бы исправить эту ошибку, Вым следует заменять KeyEvent.VK_PLUS на KeyEvent.VK_EQUALS:
...
@Override
public void keyPressed(KeyEvent e) {
if (e.getKeyCode() == KeyEvent.VK_EQUALS && e.isControlDown()) {
zoomplus();
}
}
...