我曾尝试使用下面的设置JMenuItem
的加速器:如何在Swing中使用带有加号或减号的菜单加速器?
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);
}
}
你有代码(例如[SSCCE](http://pscode.org/sscce.html))供我们玩吗? –
workforme - 在德国的键盘布局和加号/减号外的数字块的Windows vista – kleopatra
你使用主键盘上的'+'/'-'键与数字键盘?他们被视为单独的密钥,所以请确保您始终如一地使用它们。 –