设置JMenuItem加速器文本,而不仅仅是操作

时间:2016-04-05 23:57:10

标签: java swing jmenu jmenuitem

对于我的swing应用程序,JMenuItem的加速器设置如下:

JMenuItem numFieldsMI = new JMenuItem("Set Number of Fields");
numFieldsMI.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_3,
         ActionEvent.CTRL_MASK+ActionEvent.SHIFT_MASK));

当GUI被初始化时,使菜单项旁边的文本显示为“Ctrl + Shift + 3”,但当然意图是文本为“Ctrl +#”。我怎么能这样做?

1 个答案:

答案 0 :(得分:0)

更改

numFieldsMI.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_3,
         ActionEvent.CTRL_MASK+ActionEvent.SHIFT_MASK));

numFieldsMI.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_3,
         ActionEvent.CTRL_MASK ***|*** ActionEvent.SHIFT_MASK));