Java學習 - GUI設計中如何在一個窗口下進行多個面板的切換
一種實現方式是,設定JFrame實例的contentPane的布局為CardLayout,然后向contentPane中加入不同的JPanel.
結構框架如圖
注意要將CardLayout定義成JFrame的一個成員,方便后期調用
此時,每一個面板都是contentPane的一個組件,由於contentPane是CardLayout,我們可以用CardLayout自帶的方法來切換卡片,訪問不同的面板.
在代碼區,創建每個面板的時候,我們應該給各個面板設定不同的卡片名稱,如圖
這樣寫,方便我們調用卡片布局的show()方法,指定卡片名訪問某一張卡片,這種方法比使用next(),previous()更靈活.
假如需要從一個面板切換到另一個面板,只需要如下圖寫法:
例如,我們將注冊界面的卡片名記作"SignUpCard",現在在SignIn界面點擊了SignUpButton,要實現切換面板到SignUp界面,只需要為按鈕添加監視,在實現接口的時候調用Layout布局管理器的show()方法.