2013-02-22 50 views
-1

我在做,其中有連接在一起3張小Java項目核心Java項目,說f1f2f3 & f4f1有一個按鈕,點擊它後,它會調用f2f2也有按鈕,它調用f3。問題是如果我一個一個地打開所有表格,那麼當我關閉表格f2f3時,主窗體(f1)就會關閉。有關的JFrame

我希望即使我關閉表格f2f3我的主表不應該關閉,直到我親自關閉它。

package mnm; 

public class NewJFrame extends javax.swing.JFrame { 


    public NewJFrame() { 
     initComponents(); 
    } 

    private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) { 

     NewJFrame1 nb=new NewJFrame1(); 
     nb.setVisible(true); 
    } 


    public static void main(String args[]) { 
     java.awt.EventQueue.invokeLater(new Runnable() { 

      public void run() { 
       new NewJFrame().setVisible(true); 
       NewJFrame gn=new NewJFrame(); 
       gn.setDefaultCloseOperation(NewJFrame.DISPOSE_ON_CLOSE); 
      } 
     }); 
    } 

    private javax.swing.JButton jButton1; 

} 
+1

也許你能告訴我們一些你的代碼,如果第1幀被關閉,當您關閉另一個框架,必須有你錯過了別人你的主要參照系。或者當實例化框架時可能是一個問題,如果您想要多個窗口,或者另一個選項是使用JInternalFrame,則可以使用對話框。 – 2013-02-22 13:34:46

+0

在適當的地方使用大寫(例如,每個句子的開始,專有名稱如Java,單詞I)。這使讀者更容易。你不會試圖讓它更難*幫助我們,是嗎? – 2013-02-22 13:34:48

+0

如果按鈕我使另一個框的對象,我必須打開,並假設f2是窗體。那麼f2 bb = new f2(); bb.setVisible(真);那是我在所有表格中唯一使用的代碼。 – user2096592 2013-02-22 13:41:22

回答

5

..三合一框架連接在一起

不要這麼做!詳情請參閱The Use of Multiple JFrames, Good/Bad Practice?。其中兩個框架應該是模態對話框或JOptionPane


我想,即使我關閉形式f2f3,直到我親自關閉我的主要形式,不應該關閉。

現在,我已經警告過你反對它,我會添加..

請求的行爲可以通過設置的DISPOSE_ON_CLOSE默認關閉操作中this answer看到來實現。任何這些框架可以關閉而不影響其他框架。

+0

謝謝湯普森。在那個關於jInternalFrame的人說的鏈接中。你可以給我任何鏈接在我的Java項目中使用它,這樣我就不會使用多個窗口。 :) – user2096592 2013-02-22 13:49:41

+0

這裏是一個提示。在'classname + java + tutorial'上搜索並查看出現了什麼命中。例如。爲此它將是'jinternalframe + java +教程'。它有很好的說明,通常包含代碼示例。 – 2013-02-22 13:59:04

+0

再次感謝該答案中的代碼。那是你的代碼嗎?我的意思是你如何知道這些代碼。?我也想知道Java中的不同技術。 – user2096592 2013-02-22 14:00:47