0

我的代码:

fileMenu = new JMenu("File");
fileMenu.setMnemonic(KeyEvent.VK_F);
fileMenu.setDisplayedMnemonicIndex(0);

Javadocs可以AbstractButton.setDisplayedMnemonicIndex()这么说

并非所有的外观和感觉都支持这一点。

我将我的外观和感觉设置为UIManager.getSystemLookAndFeelClassName()

setDisplayedMnemonicIndex()即使在 Windows 7 下(仅当我按下 时)显式设置索引时,我也看不到助记符上的下划线ALT

但是,如果我不设置外观并只保留默认的 java 主题,它就可以工作。

有没有办法做到这一点?是不是windows的设置造成的?

4

2 回答 2

8

Alt您可以通过设置属性来更改下划线仅在按下键时出现的行为UIManager

UIManager.getDefaults().put("Button.showMnemonics", Boolean.TRUE);

我认为您需要在显示第一个 Swing 组件之前执行此操作,但我不确定。

于 2013-09-15T10:23:58.023 回答
1

按键时会出现下划线ALT。我认为它的目的是为用户提供视觉反馈,让他们知道带下划线的字符现在作为快捷键映射到相应的键。

于 2013-09-15T10:05:19.103 回答