2016-11-24 42 views
0

所以我最近一直在看Swing中的JTabbedPane功能,它看起來非常有吸引力。但是,我不想讓這些標籤是默認的,而是想知道是否可以將它們分配給按鈕。在下面的圖片中,我在我的GUI左側有我的導航菜單。這些圖像是JButtons,基本上我想要發生的是,當你點擊某個JButton時,它會打開一個不同的Tabbed Pane。這可能嗎?擺動 - 如何設置分配選項卡式窗格一個按鈕?

Navigation Sidebar

回答

2

基本上就是我希望發生的,就是當你點擊一個特定的JButton,它會打開一個不同的選項卡式窗格。這可能嗎?

當然,您可以將包含按鈕的面板添加到框架的BorderLayout.LINE_START。然後創建另一個面板,使用CardLayout並將此面板添加到邊框的BorderLayout.CENTER。

然後您將所有面板添加到卡布局。

最後,您爲每個按鈕添加一個ActionListener,以在單擊按鈕時顯示適當的面板。

有關更多信息和工作示例,請參閱How to Use CardLayout的Swing教程中的部分。

+0

謝謝!我會試試這個。 – Espin

+0

所以我嘗試了你提到的,到目前爲止它的工作很好。但是由於某種原因,我添加到其中一個JPanel的最後一個組件總是居中在左側。我不知道爲什麼。圖片:i.imgur.com/3872UQt.png。我最後添加的組件是搜索圖標,朝向鏈接圖像的底部。這是我在右邊的JPanel類的代碼:bit.ly/2gqcBwJ。這是我管理BorderLayout的Window類:bit.ly/2gI7vwe。我究竟做錯了什麼? – Espin

+0

這也只發生在JPanel中。由於某種原因,其他人不是,我不知道爲什麼。難道是因爲它位於中心邊界佈局位置嗎? @camickr – Espin

相關問題