我有一個帶有JPanel的JFrame。在Java 1.6中,爲什麼使用默認的add()不添加面板來將Jpanel添加到另一個JPanel?
我想添加另一個JPanel,這是一個預先配置的組件到我的JFrame中的Jpanel。
如果我這樣做:
subPanel.setLayout(new BorderLayout());
subPanel.add(preconfiguredPanel,BorderLayout.CENTER);
我的面板將顯示。
如果我這樣做:
subPanel.add(preconfiguredPanel);
我的JPanel將不會顯示。文檔說使用add(Component)時,它將使用默認的Layout FlowLayout。好的,但是爲什麼我的組件在使用默認的FlowLayout時不會在該JPanel內部顯示?
你在做frame.pack()和frame.setVisible(true)嗎? – amischiefr 2009-10-05 19:54:53
是。當然外框... – Zak 2009-10-05 20:01:37
也,框架的其餘部分顯示罰款。我向控制面板添加了邊框,當使用默認佈局時,控制面板爲1x1像素(或可能爲0x0)。當我使用邊界佈局時,它是預配置面板的首選大小。 – Zak 2009-10-05 20:03:28