如何使用多个修改器蒙版创建一个基石?由于缺少明确指定命令掩码,Apple建议使用此方法来获取掩码:
Toolkit.getDefaultToolkit().getMenuShortcutMask();
在一个例子中:
KeyStroke.getKeyStroke(KeyEvent.VK_N, Toolkit.getDefaultToolkit().getMenuShortcutMask();
在OS X上,这将允许我使用此加速器: Cmd + N / ⌘N。它也显示在菜单栏上:
但是,如果我需要组合修饰蒙版怎么办?像这样: Cmd + Option + N / ⌘⌥N。我试过这个:
KeyStroke.getKeyStroke("command option n");
但它没有做到。 java.awt.Toolkit
似乎没有给我这个选项。那么如何添加多个蒙版来设置为加速器呢?
答案 0 :(得分:1)
工具包的getMenuShortcutKeyMask()
在Mac OS X上返回InputEvent.META_MASK
。您可以在其中添加InputEvent.ALT_MASK
以获取⌥⌘N。
private static final int MASK =
Toolkit.getDefaultToolkit().getMenuShortcutKeyMask();
…
KeyStroke.getKeyStroke(KeyEvent.VK_N, MASK | InputEvent.ALT_MASK)
从这个example开始产生如下结果: