【发布时间】:2015-01-05 19:41:52
【问题描述】:
我想创建一个 Java swing 应用程序,它仅在按下 Ctrl+C 时才加载 GUI。
当我启动应用程序时,它应该监视键盘事件,以便在按下 Ctrl+C 时,显示 GUI (JFrame)。在按下 Ctrl+C 之前,我不想显示 GUI 的任何部分。
我无法找到在实现任何 GUI 组件之前如何关联键盘事件。是否可以在键盘捕获时有条件地显示 JFrame 即 frame.setVisible(true)?
【问题讨论】:
-
你可能想看看key bindings。
-
@TNT 你需要一个 JComponent,但它不可用(目前)。
-
@Charlie Right...忘记了 JFrame 不扩展 JComponent。
-
@TNT 即使有,它也没有任何焦点(因为它不可见),所以它不会注册任何键。在 sks,我认为您需要在 while 循环中使用 raw input 来检查 CTRL+C。
-
我的应用程序的目的是将它作为 Windows 桌面应用程序运行,它将像任何其他 Windows 应用程序一样继续运行,并且每当用户尝试使用 ctrl+c 从其他窗口复制任何内容时,我的应用程序应该捕获事件并在我的应用程序的 GUI 中显示复制的内容。
标签: java swing keyboard jframe copy-paste