2010-03-21 42 views
2

我正在用Java編寫GUI應用程序。我是第一次這樣做。我應該創建一個新窗口還是修改舊窗口?

我想有一個窗體(帶單選按鈕等)。填寫表格並按下「提交」按鈕後,我想要一個新窗口。我看到兩種可能的方法:

  1. 關閉「舊」窗口並打開一個「新」窗口。

  2. 從現有窗口中移除「舊」元素並放置「新」元素。

什麼是標準的路要走?如果是第一種方式,關閉窗口的命令是什麼?如果是第二個,我如何從現有窗口中刪除元素?

+0

沒有更好的描述應用程序正在做什麼,我猜「形式」最好創建爲JOptionPane並在確認按鈕後銷燬。 – msw 2010-03-21 12:40:54

回答

4

你應該做的是爲所有想要顯示的窗口創建新的JPanel,然後刪除(或隱藏)要隱藏的面板並添加或顯示要顯示的面板。

+0

理智的聲音。 – Anders 2010-03-21 13:01:59

+0

感謝您的回答。順便說一下,我應該使用'dispose()'來隱藏「舊」'JPanel'嗎? – Roman 2010-03-21 13:07:34

+0

只需使用'setVisible(false)'來隱藏它。 – Bombe 2010-03-21 13:47:28

1

我不太瞭解Java,因此我無法回答您的具體問題,但我想提醒您自Windows Vista以來的窗口打開/關閉效果:它在某些較舊的設置中看起來很奇怪奇才在那裏每次你點擊旁邊的窗口淡出和...

+2

您可能不應該基於應用程序和標準UI約定基於它在特定窗口管理器下的外觀來編寫應用程序。 – msw 2010-03-21 12:45:54

+0

當然你是對的。但是這個效果肯定是在Windows UI準則中考慮的。所以如果你希望它看起來像保持一樣,或至少是它的一部分,就像在嚮導中一樣,保持窗口。如果你想展示一些全新的東西,甚至可能會以不同的尺寸展示一個新的東西。 – eWolf 2010-03-26 23:27:01

1

我認爲最合理的方式是有2個對象(「關閉‘老’窗口並打開一個‘新’一」

無論如何,我建議你用普通元素做一個抽象類,然後用Window1Window2來擴展它。

相關問題