Salut,
Je te conseille d'utiliser un CardLayout. C'est très simple à utiliser et ça te permet de superposer autant de JPanel que tu veux et tu peux passer de l'un à l'autre sois en une ligne de code ou par avec des actionListener.
Voila comment l'utiliser:
Il faut commencer par déclarer le layout (contrairement aux autres) et de créer une petite liste qui regroupe tous tes panels puis créer un JPanel conteneur:
1 2 3
| public CardLayout cl = new CardLayout();
String [] listContent = {"panel1", "panel2", "panel3"};
public JPanel content = new JPanel(); |
Ensuite tu assigne "cl" comme layout à "content":
Et pour finir tu ajoutes tes composants en précisant à quelle "couche" il se trouve:
1 2 3
| content.add(panel1, listContent[0]);
content.add(panel2, listContent[1]);
content.add(panel3, listContent[2]); |
"listContent[0]" signifie que le composant ajouté sera en haut de la pile et donc sera visible par défaut.
Et pour finir, pour changer de panel tu as juste à entrer cette ligne avec le numéro de la couche de ton choix:
cl.show(content, listContent[0]);
Bien-sur tu peux l'utiliser n'importe où (ou presque^^) mais le plus souvent elle est entrée dans un actionListener.
Voila j'espère que ça t'a aidé!
Partager