BorderLayout會做一些奇怪的事情。如果我想補充兩個面板的Container
用相同的約束(BorderLayout.CENTER
例如),那麼第一個消失了,即使第二個被刪除或不可見爲什麼BorderLayout會在添加新組件時覆蓋組件?
它好像它將使意義它在前面的元素上面堆疊每個元素。
這是正確的,通過設計?如果是這樣,是否有一些文件?
有沒有其他人對此感到沮喪?你有沒有解決方案,比如自定義LayoutManager
?
示例代碼:
JFrame frame = new JFrame();
frame.setSize(500, 500);
JPanel panel1 = new JPanel();
panel1.setBackground(Color.blue);
frame.getContentPane().add(panel1);
JPanel panel2 = new JPanel();
panel2.setBackground(Color.red);
frame.getContentPane().add(panel2);
panel2.setVisible(false); // Seems like it should allow us to see panel1.
frame.setVisible(true);
這將創建並顯示一個500×空白框。