2011-02-28 97 views
3

我有兩個JFrames。第一個定義爲public firstJframe,第二個定義爲public static final jFrame。我想單擊第一個JFrame上的按鈕打開第二個JFrame。我怎樣才能做到這一點?打開一個靜態窗體/ jFrame點擊按鈕

.setVisible對此不起作用。我真的不知道如何繼續這個。

+4

爲更好地幫助,請發佈SSCCE(http://pscode.org/sscce.html)。 – 2011-02-28 11:43:05

+2

.setVisible()肯定會起作用。顯示一些代碼,因爲你的問題太模糊了,我們無法幫助你。 – MeBigFatGuy 2011-02-28 12:40:39

+1

你確定第二幀已被實例化嗎?檢查第二幀的大小:從另一幀打開幀應該沒問題 – Heisenbug 2011-03-09 10:57:35

回答

0

嘗試爲要更新的對象調用revalidate()(在您的情況下爲第二幀)。

例子:

JButton myButton = new JButton("Open new window"); 
    JFrame newFrame = new JFrame("New Window"); 

    myButton.addActionListener(new ActionListener() { 
    public void actionPerformed(ActionEvent e) { 
    newFrame.pack(); 
    newFrame.setVisible(true); 
    newFrame.revalidate(); 
    } 
    }); 

更新

如果還是不行,請嘗試調用此:

newFrame.invalidate(); 
newFrame.validate(); 
-1

我建議: 下buttontype

this.dispose

new public static final jFrame.setvisible(true); 
相關問題