我希望活动窗口(即JFrame或JDialog)能够接收特定的keyEvent,以便无论通过窗口如ALT + F4处理焦点该按键事件是否按下 它只要将活动窗口对焦关闭,我尝试覆盖postprocesskeyEvent,但它不能正常工作写全局监听器
Q
写全局监听器
0
A
回答
1
您可以使用java.awt.Toolkit中的addAWTEventListener()方法为您的应用程序添加全局事件侦听器。
你需要选择你想要当你添加听者接收与事件掩码的事件类型。
例如:
// Then on startup register.
AWTEventListener myGlobalKeyListener = new MyGlobalKeyListener();
Toolkey.getDefaultToolkit().addAWTEventListener(myGlobalKeyListener, AWTEvent.KEY_EVENT_MASK);
如果你试图当用户按下ALT-F4然后一个事件处理程序不会帮助你从关闭应用程序停止窗口。我相信操作系统通过向应用程序发送SIGTERM来处理这个问题。 Java没有收到KeyEvent。
1
使用摆动时拦截击键标准方法是使用Key Bindings。虽然如前所述,这仍然不适用于Alt + F4。
如果你正试图阻止ALT + F4从关闭窗口,那么你需要使用setDefaltCloseOperation(...)方法什么也不做。 Closing an Application提供了有关此方法的更多信息。
相关问题
- 1. AS3监听按键,但全局监听
- 2. 全局变量的JS监听器?
- 3. EXTJS 4 - 全局异常监听器
- 4. C++ Win32监听全局keybind
- 5. Android的全球监听器
- 6. ExtJS使用Ext.KeyMap监听全局按键
- 7. 写端口监听器
- 8. vue:从websocket监听器发出全局事件
- 9. Android上的全局键盘输入监听器
- 10. 如何实现全局密钥监听器?
- 11. typescript访问监听器中的全局变量
- 12. 如何设置全局属性,如果有ajax监听器
- 13. 全局内容加载事件监听器
- 14. Xamarin.forms grib布局点击监听器
- 15. 全局热键在听写功能
- 16. TCP监听器停止监听
- 17. Laravel监听器监听多个事件
- 18. CommunicationState监听器?
- 19. 器件监听器
- 20. 如何在Angular 4中编写全局事件侦听器?
- 21. Javascript:全局元素焦点侦听器
- 22. Java:添加全局鼠标侦听器
- 23. Javafx TreeView监听器
- 24. JavaFX TextField监听器
- 25. 监听器丢失
- 26. GridView - Onclick监听器
- 27. Symfony onKernelException监听器
- 28. AS3 - MouseWheelDown监听器
- 29. ListSelectionModel和监听器
- 30. ExtJS CheckboxSelectionModel监听器