有没有办法在 Win 7 下以原生外观和感觉将下划线设置为助记符



我的代码:

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

Javadocs for AbstractButton.setDisplayedMnemonicIndex()

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

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

而且即使索引是由 setDisplayedMnemonicIndex() 明确设置的,我也看不到助记符上的下划线 - 在 Windows 7 下(仅当我按 ALT 时)。

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

有没有办法实现这一目标?是由Windows的设置引起的吗?

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

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

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

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

相关内容

  • 没有找到相关文章

最新更新