如何解决如何在Java中的Mac上捕获Command Z KeyStroke
我目前可以使用以下代码在Mac上捕获ctrl + z击键。
public void registerUndoAction(ControlPane controlPane) {
ActionMap map = this.getActionMap();
Action action = controlPane.undoAction();
String keyStrokeAndKey = "control Z";
KeyStroke keyStroke = KeyStroke.getKeyStroke(keyStrokeAndKey);
this.getInputMap().put(keyStroke,keyStrokeAndKey);
this.getActionMap().put(keyStrokeAndKey,action);
}
效果很好。但是,我认为在Mac上使用“ command + z”按键组合而不是“ ctrl + z”更为自然。
我尝试通过使用以下按键来捕获此按键:
String keyStrokeAndKey = "command Z";
但是这不起作用。当我使用以上代码片段捕获此按键时,没有任何动作被注册。我尝试遵循以下类似问题:How do I implement Ctrl+Z / Command+Z in Java/Swing?
但是该问题中引用的代码没有注册我的“ command + z”键。另外,我的IDE发出警告:
Toolkit.getDefaultToolkit().getMenuShortcutKeyMask()
已弃用(原始问题已有10年历史了)。那么命令z是否有按键?如果没有,捕获该动作的替代方法是什么。谢谢!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。