2011-01-06 73 views
0

如果模式JDialog顯示在框架的頂部(框架是對話框的所有者),我應該在JFrame實例中註冊哪個監聽器?提前致謝。如果在JFrame頂部顯示模式對話框,則通知

+0

@Charles是有原因的編輯和刪除新的標籤,因爲我將編輯另一個Swing的相關線索與這兩個標籤... – mKorbel 2011-09-08 07:54:02

回答

2

我認爲JFrame.addWindowListener(...)會工作,然後要注意WindowListener.windowDeactivated(...)

ETA:

jFrame.addWindowListener(new WindowAdapter() { 
     @Override 
     public void windowDeactivated(WindowEvent e) { 
      if(e.getOppositeWindow() instanceof JDialog) { 
       JDialog dialog = (JDialog) e.getOppositeWindow(); 
       if(dialog.isModal()) { 
        // do stuff 
       } 
      } 
     } 
    });