3

澄清:是否有一种简单/简单的方法来更改默认掩码(我的系统上的 ALT),以便 JMenu 等默认情况下不使用默认掩码 + 助记符(例如,ALT + VK_A)进行访问?或者这应该只能通过自定义键绑定来完成?

默认的无鼠标修饰符是 ALT,由 Look-n-Feel 定义(我相信)。据我所知,定义独特的 Look-n-Feel 并非易事,因此我还没有准备好进行处理。

但是,我想知道是否有一种简单或易于访问的方法可以将默认的无鼠标修饰符修改为 ALT 以外的其他内容。

我正在阅读 Java 教程,并注意到默认的无鼠标修饰符适用于菜单,但我找不到将其更改为其他内容的方法(有没有办法将 ActionEvent 掩码设置为 shift/ctrl哪个会覆盖 ALT 的使用?)。

4

2 回答 2

2

如果我理解正确,您在这里谈论的是“助记符”。您可以创建使用KeyStroke类所需的任何限定符的键绑定。更改助记符限定符是否重要?

另外,请参阅此问题以获取更多信息。

更新

我在 Mac/OS X 上,所以我从来没有过多地研究助记符,但看看WindowsLookAndFeelBasicLookAndFeel(大多数 LAF 的基类)类的源代码。我在其中找到了一个BasicLookAndFeel看起来很有希望的属性:"Menu.shortcutKeys",具有默认值new int[] {KeyEvent.ALT_MASK}。尝试将其设置为其他内容,看看它是否有效..

于 2013-06-23T20:05:42.627 回答
1

由于此键因我的平台而异,因此Toolkit该类包括getMenuShortcutKeyMask()“确定哪个修饰键是菜单快捷方式的适当加速键”。这里有一个完整的例子。另请参阅如何使用菜单

于 2013-06-23T21:30:39.683 回答