如何在 Mac 中使用 Command-c/Command-v 快捷键复制/粘贴文本?

发布于 2024-12-02 08:49:46 字数 264 浏览 0 评论 0原文

我有一个 Java Swing 应用程序,我想在 Mac OS X 上运行。我想使用普通的 Mac 复制/粘贴快捷方式将文本复制/粘贴到我的 Java 应用程序中的文本字段。

Ctrl+c & Ctrl+v 可以解决问题,但我想使用 Command+c &改为 Command+v。我怎样才能做到这一点?

I have a Java Swing application that i want to run on Mac OS X. I want to use the normal Mac copy/paste shortcuts to copy/paste text to a text field in my Java application.

Ctrl+c & Ctrl+v does the trick but i want to use Command+c & Command+v instead. How can i do that?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

月棠 2024-12-09 08:49:46

如果您使用的是第 3 方 L&F 实现,它可能不支持 Mac 的本机键盘快捷键。设置 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 上运行时,您才需要执行此操作,以便您不影响其他操作系统的键盘映射。

If you're using a 3rd-party L&F implementation it probably doesn't support the Mac's native keyboard shortcuts. The following code should reinstate the Mac's keyboard shortcuts for JTextFields after setting the L&F:

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);

Of course you'll only need to do this if you detect that the application is running on a Mac so that you don't affect the keyboard mappings for other OS's.

对你而言 2024-12-09 08:49:46

您是否见过、了解或正在使用 Eclipse 维护的 SWT(Standard Widget Toolkit)?有一个按键(SWT.COMMAND)用于命令。

Have you seen, know of or are using the SWT (Standard Widget Toolkit) maintained by Eclipse? That has a key press (SWT.COMMAND) for command.

七婞 2024-12-09 08:49:46

你运行纯 Swing 吗?如果是这样,它应该自动执行此操作(请注意,如果您不使用应用程序捆绑包,它可能不会制作小菜单动画)。如果没有,那么您将必须查阅您正在使用的任何 API 的文档。

刚刚测试了一下,在 Snow Leopard 上运行良好。

Are you running pure Swing? If so it should do that automatically(note it may not make the little menu animation if you dont use an Application bundle). If not then you will have to consult the documentation for whatever API you are using.

Just tested it and it works fine on Snow Leopard.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文