2013-03-09 105 views
7

基本上我試圖做的是在JPanel的右邊添加2張圖片,並排放置在JPanel的中心和JLabel中,所以我被告知將JPanel的佈局設置爲BorderLayout並用BorderLayout.CENTER和帶有BorderLayout.EAST的JLabel添加圖片。如何將兩個組件添加到帶有BorderLayout的JPanel?

JPanel panel = new JPanel(); 
panel.SetLayout(new BorderLayout(100,100)); 

panel.add(pic1,BorderLayout.CENTER); 
panel.add(pic2,BorderLayout.CENTER); 
panel.add(new JLabel("Example"), BorderLayout.EAST); 

實際的結果是,這些照片是對方給的JPanel 的左側,將JLabel的JPanel的權利。

非常感謝您的幫助!

回答

19

你需要做的是有另一個JPanel,你可以在西面和東面添加一張照片。然後將JPanel添加到您的panel的中心。例如,

JPanel p = new JPanel(new BorderLayout()); 

p.add(pic1,BorderLayout.WEST); 
p.add(pic2,BorderLayout.EAST); 

panel.add(p,BorderLayout.CENTER); 
+0

非常感謝! – Gilad 2013-03-09 14:04:45

+0

不客氣:) – 2013-03-09 14:08:24

1

BorderLayout允許每個區域只有一個組件。 可以將它們放在不同的區域,例如或將它們包含在一個額外的JPanel中。或使用不同的LayoutManager