我希望活動窗口(即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. 全局動作監聽器
- 2. AS3監聽按鍵,但全局監聽
- 3. JavaFX全局鍵盤監聽器
- 4. 全局變量的JS監聽器?
- 5. EXTJS 4 - 全局異常監聽器
- 6. C++ Win32監聽全局keybind
- 7. Android全局佈局監聽器在android中重複調用
- 8. Android的全球監聽器
- 9. 使用jasmine-node監聽全局函數
- 10. ExtJS使用Ext.KeyMap監聽全局按鍵
- 11. 寫端口監聽器
- 12. Android上的全局鍵盤輸入監聽器
- 13. vue:從websocket監聽器發出全局事件
- 14. 如何設置全局屬性,如果有ajax監聽器
- 15. typescript訪問監聽器中的全局變量
- 16. 無法修改JQuery監聽器中的Coffeescript全局變量
- 17. 全局內容加載事件監聽器
- 18. 如何實現全局密鑰監聽器?
- 19. Android監聽器中斷監聽器
- 20. 添加一個全局事件監聽器,它始終監聽使用Jquery/JS的服務器調用
- 21. SwitchPreference監聽器與自定義佈局
- 22. Android在佈局上點擊監聽器
- 23. Android片段佈局監聽器
- 24. Xamarin.forms grib佈局點擊監聽器
- 25. 全局熱鍵在聽寫功能
- 26. JMeter BeanShell監聽器全部結果
- 27. 全球各地的定位監聽器
- 28. 如何爲ListView編寫onClick監聽器?
- 29. Laravel監聽器監聽多個事件
- 30. TCP監聽器停止監聽