2012-12-03 29 views
-2

我實際上在一個顯示很多框架的java項目上工作,當我們點擊一​​個按鈕,然後我們去適當的框架......問題在於第一個框架始終保持可見。「母框」在顯示下一幀後消失

我試過f1.setVisible(false);在行動中,但同樣的問題仍然存在。

+1

請告訴我們一些代碼。我們需要看你是如何試圖完成這項任務,以告訴你可能有什麼錯誤。 –

+5

請參閱[使用多個JFrames,好/壞實踐?](http://stackoverflow.com/a/9554657/418556)BTW - by *「顯示許多幀的項目」* DYM'JFrame'實例或幀在網頁,或視頻,或..? –

+3

你的問題是,你可能在錯誤的JFrame實例上調用'setVisible(false)',因爲如果你在實際的可視化JFrame上調用它,它肯定會消失。但是說了這些,我衷心贊同@安德魯和MRI的建議(對他們倆都是1+)。使用CardLayout。 –

回答

-1

在打開一個新的框架,也稱它關閉你的窗口的方法

private void closeWindow(){ 
    WindowEvent event = new WindowEvent(this, WindowEvent.WINDOW_CLOSING); 
    Toolkit.getDefaultToolkit().getSystemEventQueue().postEvent(event); 
} 
+0

如果這樣的工作,那麼應該'這個。 setVisible(false)' –

+2

確實,在用setVisible替換該代碼時,它的行爲如預期。出乎意料的是,他將此標記爲解決方案,所以我猜想它對他有用。如果我們有一些代碼可以查看,那麼識別問題會容易得多。 –

6

我已經建議這樣做的次數是上千次,但是使用適當的佈局管理器(例如CardLayout)可以切換多個視圖,而不是多個幀。請參閱How to Use CardLayout