Problème affichage JPanel avec setLocation

Résolu
Signaler
Messages postés
115
Date d'inscription
samedi 29 mars 2003
Statut
Membre
Dernière intervention
19 décembre 2008
-
Messages postés
115
Date d'inscription
samedi 29 mars 2003
Statut
Membre
Dernière intervention
19 décembre 2008
-
Bonjou à tous,
je sais que la question a été posé sur le forum, j'ai cherché, testé, mais rien ne marche.
Je voudrais pouvoir positionner un JPanel au pixel près. Je fais donc comme ceci :

JPanel lines = new JPanel();
lines.setLayout(null);

JPanel panel2 = new JPanel(new BorderLayout());
panel2.add(num, BorderLayout.NORTH);
panel2.add(head, BorderLayout.CENTER);
panel2.add(conveyor, BorderLayout.SOUTH);

lines.add(panel2);
panel2.setLocation(10,10);

Mais rien ne s'affiche !, j'ai pourtant d'autre JPanel sur la meme fenetre qui s'affichent. Lorsque je fais un :

Point test = panel2.getLocation();
System.out.println("x : "+test.x+" et y : "+test.y+" !!");

Il me donne bien la bonne position, seulement le JPanel ne veut pas s'afficher. J'essayé avec revalidate, repaint..
Lorsque je laisse le layout par défaut, le JPanel s'affiche, mais n'est pas positionné comme il faudrait.

Je demande donc votre aide, merci d'avance.

-{ Saifer }-
A voir également:

2 réponses

Messages postés
115
Date d'inscription
samedi 29 mars 2003
Statut
Membre
Dernière intervention
19 décembre 2008
1
J'ai ajouté mon panel a ma frame, dsl j'ai oublié de le préciser ici, ca paraissait logique, mais il est vrai que l'erreur aurait pu etre ce là.


Merci d'avoir répondu, mais en fait résolu le prob, j'ai utiliser un JLayeredPane au lieu d'un simple JPanel, et spécifiant la taille et la position (setSize, setLocation), et ca a marché, en fait ca ne marchait pas parcque la taille de mes objet était de 0, je ne sais pas pourquoi, lorsque je fais setLayout(null), mais objets contenu dans mon panel ont une taille de 0, il faut donc la redimensionner.

-{ Saifer }-
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
133
faudrait peut-être ajouté ton panel à ta frame...

add(panel2, null);