我有一個小對話框出現,在這個框架內有一系列按鈕和一個文本框。 我需要框架能夠檢測到用戶何時將焦點放在屏幕上的其他任何東西上(除了框架及其組件外的任何東西),所以我可以關閉框架。 有關如何解決此問題的任何建議?我幾個小時一直在努力解決焦點問題,但沒有解決方案!在鞦韆上檢測焦點(框架+組件)
3
A
回答
4
需要的框架,以便能夠檢測用戶何時已經把重點放在別的屏幕
使用的WindowListener上偵聽的windowDeactivated。
1
監聽KeyboardFocusManager屬性「permanentFocusOwner」的屬性更改。在收到通知時,檢查新的focusOwner是否在框架下的子層次結構中,如果沒有 - 關閉框架。
編輯:看到提示Window/StateListener的答案 - 它們比我的頂級窗口更好:-)監聽keyboardFocusManager是深層次下的容器的一個好方法,實現f.i. JTable中的CellEditorRemover(來決定,如果一個掛起的編輯應終止)
5
的WindowEvent參數提供可以告訴你,如果該窗口已通過getNewState()方法失去焦點。
class MyFocusLostListener implements WindowStateListener {
public void windowStateChanged(WindowEvent e) {
if (e.getNewState() == WindowEvent.WINDOW_LOST_FOCUS) {
e.getWindow().setVisible(false);
}
}
}
相關問題
- 1. 鞦韆組合框
- 2. 鞦韆組合框驗證錯誤
- 3. 在鞦韆上顯示HTML5
- 4. Javafx在鞦韆組件調整大小
- 5. jprogressbar在鞦韆
- 6. BoxLayout.Y_AXIS在鞦韆
- 7. eli5鞦韆工人和鞦韆線程
- 8. 序列化鞦韆/ AWT組件
- 9. 鞦韆:透明邊框的對焦單選按鈕
- 10. 自定義組件擺在鞦韆上的問題
- 11. 在鞦韆上爆炸組件的方法?
- 12. 關閉斯卡拉鞦韆架
- 13. 鞦韆骨架應用程序
- 14. JLabel在鞦韆中的數組
- 15. 設置jLabel在鞦韆上的尺寸
- 16. 在鞦韆上使用睡眠()
- 17. 在鞦韆上添加表格
- 18. 在鞦韆上顯示文本流
- 19. KET測試項目的鞦韆導航
- 20. 鞦韆手風琴?
- 21. 鞦韆畫問題
- 22. 爪哇鞦韆setSize
- 23. 在鞦韆列流文本
- 24. 檢測焦點在jpanel上的變化
- 25. 井字遊戲鞦韆未檢測贏家
- 26. 如何創建點擊事件按鈕在鞦韆?
- 27. 在jQuery的焦點上,檢測焦點轉移或沒有元素有焦點
- 28. 在Silverlight中檢測控件的焦點
- 29. 鞦韆上的EDT(傻瓜版)
- 30. 我可以在鞦韆的組件邊界外畫嗎?
這完美的作品!謝謝! :d – kazoo 2011-04-19 15:34:16