1

KeyStroke.getKeystroke(String) 的文档(例如,getKeyStroke("control DELETE"))的文档没有提供如何访问 macintosh 命令键的示例,并且我找不到列出诸如“控制”之类的修饰符的各种单词拼写的参考这个函数接受。命令键的语法是什么?

作为参考,这里是 getKeystroke 的文档:


解析一个字符串并返回一个KeyStroke. 该字符串必须具有以下语法:

<修饰符>* (<typedID> | <pressedReleasedID>)
  修饰符 := 移位 | 控制 | 控制 | 元 | 替代 | 替代图
  typedID := typed <typedKey>
  typedKey := 长度为 1 的字符串,给出 Unicode 字符。
  pressReleasedID := (按下 | 释放) 键
  key := KeyEvent 键码名称,即“VK_”后面的名称。

如果未指定键入、按下或释放,则假定已按下。这里有些例子:

  "插入" => getKeyStroke(KeyEvent.VK_INSERT, 0);
  "控制删除" => getKeyStroke(KeyEvent.VK_DELETE, InputEvent.CTRL_MASK);
  "alt shift X" => getKeyStroke(KeyEvent.VK_X, InputEvent.ALT_MASK | InputEvent.SHIFT_MASK);
  "alt shift 释放 X" => getKeyStroke(KeyEvent.VK_X, InputEvent.ALT_MASK | InputEvent.SHIFT_MASK, true);
  “键入 a” => getKeyStroke('a');
4

1 回答 1

3

我必须查看 AWTKeyStroke getAWTKeyStroke(String s) 的源代码以查看所有可接受的修饰词,然后进行一些试验和错误,以检查命令键的修饰符语法是否为“元”。

于 2013-07-10T23:27:14.990 回答