当我将setAccelerator()设置为Control + A或Control + P并运行程序时,它不会检测到击键.
这是代码:
menuItem = new JMenuItem("About");
menuItem.setActionCommand("About");
menuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_A, Event.CTRL_MASK));
menuItem.setMnemonic(KeyEvent.VK_A);
menuItem.addActionListener(this);
menu.add(menuItem);
Run Code Online (Sandbox Code Playgroud)
然后当它被按下时,它应该调用Action Listener:
public void actionPerformed(ActionEvent e) {
if(e.getActionCommand().equals("About")) {
System.out.println("About");
}
}
Run Code Online (Sandbox Code Playgroud)
如果重要的话,我在Mac上运行Eclipse.