2017-04-03 38 views
-1

的可用空間,我有兩個實例的JPanel的JLayeredPane的,在不同的z訂單。我希望我的兩個孩子JPanel始終填充LayeredPane的空間。製作的JLayeredPane的孩子填寫集裝箱

的想法對我來說是一個切換第二面板的顯示在第一的頂部顯示一個模式般的對話。是的,我可以只使用一個JDialog,但我認爲嘗試在覆蓋的JPanel上創建一些透明度以獲得很好的效果會很有趣。

我發現,使用上的JLayeredPane,像BorderLayout的佈局管理器,並試圖設置這兩個孩子CENTER衝突,因爲這兩個板不能在該中心。

有沒有,我沒有看到一個把戲?

+0

「我希望我的兩個孩子JPanels的總是填補的layeredPane的空間」你想要什麼困惑。如果你這樣做,頂層的JPanel將掩蓋底層JPanel中的所有內容,因爲JPanel描繪它的背景。 – ControlAltDel

+0

這就是要點,正如下一段所述。 – gdbj

回答

1

的想法對我來說是一個切換第二面板的顯示在第一

的頂部要做到這一點,最簡單的方法是使用一個Glass Pane

退房的Disabled Glass Pane這種方法的一個例子。

+0

這看起來正是我所期待的。我可能會補充說我已經閱讀了幾篇文章,並且已經對您做出了很好的回答。謝謝! – gdbj

+0

還有一個基本的問題,關於如何填充容器的空間。我嘗試在layeredPanel上使用'ComponentListener',覆蓋componentResized來設置我的子容器的大小,但它基於mousedown設置大小,而不是mouseup。大小的時間不正確。 – gdbj

+0

基本上,需要一個超級簡單的佈局管理器,只需將組件擴展爲父級的大小!希望我可以在這個東西上使用CSS ... gah。 – gdbj