Salve
ho realizzato un jframe con un jpanel con sfondo ora vorrei posizionare delle jlabel in determinate posizioni come faccio?
grazie
Salve
ho realizzato un jframe con un jpanel con sfondo ora vorrei posizionare delle jlabel in determinate posizioni come faccio?
grazie
hai pensato ad un LayoutManager
I JLabel immagino debbano stare nel JPanel, giusto? Questi JLabel vuoi posizionarli/dimensionarli esplicitamente tu? (non è generalmente una buona idea ma è chiaro che dipende da cosa devi fare di preciso).Originariamente inviato da xedy
ho realizzato un jframe con un jpanel con sfondo ora vorrei posizionare delle jlabel in determinate posizioni come faccio?
Comunque puoi togliere il layout manager dal JPanel (setLayout(null)) e aggiungere e poi posizionare/dimensionare tu i JLabel con setBounds o setLocation/setSize.
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
ok perfetto quello che mi hai detto ma così facendo si è tolto lo sfondo che avevo dato perchè?
Bisogna vedere cosa hai scritto ....Originariamente inviato da xedy
ok perfetto quello che mi hai detto ma così facendo si è tolto lo sfondo che avevo dato perchè?
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
ho scritto questo:
JPanel panel = new BackgroundPanel (img);
setLayout(null);
int y = 15;
label=new Label[y];
int x = 0;
int z = 130;
for(int i=0;i<y;i++)
{
System.out.println(i);
label[i]= new Label("ciao n.:"+i);
label[i].setLocation(x, z);
panel.add(label[i], BorderLayout.WEST);
z = z + 30;
}
add (panel);
Il setLayout devi farlo sul panel ... non sul container che contiene il panel!!Originariamente inviato da xedy
JPanel panel = new BackgroundPanel (img);
setLayout(null);
Nota che stai usano Label ... è di AWT, non di Swing. Cerca sempre di evitare il più possibile mix di componenti AWT e Swing, perché può portare problemi di "sovrapposizione" strana (specialmente se ad esempio usi componenti Swing che hanno un "drop down" come JComboBox). Nel tuo caso andrebbe anche bene Label ... ma almeno per coerenza meglio usare JLabel!Originariamente inviato da xedy
int y = 15;
label=new Label[y];
Non basta setLocation .... l'ho detto sopra: o usi setBounds oppure setLocation e setSize. Devi dare posizione e dimensione!Originariamente inviato da xedy
label[i].setLocation(x, z);
Il constraint BorderLayout.WEST non serve a una mazza ... non stai usando BorderLayout!!!Originariamente inviato da xedy
panel.add(label[i], BorderLayout.WEST);
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet