我有一个 Java Swing 应用程序,我想在 Mac OS X 上运行。我想使用普通的 Mac 复制/粘贴快捷方式将文本复制/粘贴到我的 Java 应用程序中的文本字段。
Ctrl+c & Ctrl+v 可以解决问题,但我想使用 Command +c & Command+v 代替。我该怎么做?
最佳答案
如果您使用的是第 3 方 L&F 实现,它可能不支持 Mac 的 native 键盘快捷键。以下代码应在设置 L&F 后为 JTextField
恢复 Mac 的键盘快捷键:
InputMap im = (InputMap) UIManager.get("TextField.focusInputMap");
im.put(KeyStroke.getKeyStroke(KeyEvent.VK_C, KeyEvent.META_DOWN_MASK), DefaultEditorKit.copyAction);
im.put(KeyStroke.getKeyStroke(KeyEvent.VK_V, KeyEvent.META_DOWN_MASK), DefaultEditorKit.pasteAction);
im.put(KeyStroke.getKeyStroke(KeyEvent.VK_X, KeyEvent.META_DOWN_MASK), DefaultEditorKit.cutAction);
当然,只有当您检测到该应用程序正在 Mac 上运行时,您才需要执行此操作,这样您就不会影响其他操作系统的键盘映射。
关于java - 如何在 Mac 中使用 Command-c/Command-v 快捷方式复制/粘贴文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7252749/