Я попытался настроить ускоритель JMenuItem
, используя следующее:
item.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_PLUS, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask()));
Пункт меню показывает ярлык ⌘+
(на Mac), но нажатие этих двух клавиш не вызовет его. У меня такая же проблема со знаком минус -
.
Можно ли как-нибудь использовать пункт меню с любым из этих знаков в качестве ярлыка?
РЕДАКТИРОВАТЬ - Вот SSCCE:
public class MenuWithPlus {
public static void main(String[] args) {
JFrame frame = new JFrame();
JMenuBar bar = new JMenuBar();
JMenu menu = new JMenu("View");
JMenuItem item = new JMenuItem("Zoom in");
item.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_PLUS, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask()));
item.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
System.out.println("ZOOM IN TRIGGERED");
}
});
menu.add(item);
bar.add(menu);
frame.setJMenuBar(bar);
frame.pack();
frame.setLocationRelativeTo(null);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}