2013-03-09 11 views
7

Quello che in sostanza sto cercando di fare è aggiungere 2 immagini, Side-by-Side al centro di un JPanel e una JLabel alla destra di JPanel, quindi mi è stato detto di impostare il layout di JPanel come BorderLayout e aggiungere le immagini con BorderLayout.CENTER e JLabel con BorderLayout.EAST.Come inserire due componenti in un JPanel con BorderLayout?

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); 

in realtà il risultato è che le immagini sono su ogni altra a sinistra del JPanel e il JLabel è alla destra del JPanel.

Grazie mille per il vostro aiuto!

risposta

19

Quello che devi fare è avere un altro JPanel in cui aggiungi una foto a ovest e una a est. Quindi aggiungi JPanel al Centro del tuo panel. Ad esempio

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

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

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

Grazie mille! – Gilad

+0

Prego :) –

1

BorderLayout consente un solo componente per area. O mettili in aree diverse, ad es. o includerli in un JPanel aggiuntivo. O utilizzare un diverso LayoutManager.

Problemi correlati