簡體   English   中英

javax.swing.JDialog在失去焦點時會凍結嗎?

[英]javax.swing.JDialog freezes when it loss focus?

我正在使用Swing編寫應用程序。 我有我的主應用程序框架( javax.swing.JFrame ),它可以打開我的第一個javax.swing.JDialog ,稱為ClientMngDialog ,其中包含一個javax.swing.JTable填充了從數據庫中加載的數據。

當我在表中選擇一個客戶端時,我想在第一個javax.swing.JDialog上打開一個名為ClientEditDialog的第二個javax.swing.JDialog ,然后可以編輯所選客戶端的信息。

這兩個javax.swing.JDialog使用Dialog.ModalityType.DOCUMENT_MODAL ,因為Javadoc說:

文檔模式對話框會阻止同一文檔中的所有窗口,但其子層次結構中的窗口除外。 在這種情況下,文檔是共享公共祖先的窗口層次結構,稱為文檔根,它是沒有所有者的最近祖先窗口。

第一個對話框工作正常,沒有發生任何奇怪的事情。 但是,當我單擊對話框之外的其他位置時,位於第二個對話框上方的第二個對話框將凍結也許我可以將其視為失去焦點 )。 它上的所有組件都不再響應,我唯一能做的就是單擊它的關閉按鈕。

我嘗試了Dialog.ModalityType.APPLICATION_MODAL ,沒有幫助,總是同樣的問題。 我將SwingUtilites.isEventDispatchThread()放在各處,並且按預期返回true

有人有線索嗎?

ps我在Xfce 4 Desktop上使用Debian Wheezy。

重新啟動計算機后,問題消失了。 真的很奇怪,我也不知道為什么。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM