Changer un composant à la volée.
Bonjour,
En fonction d'un test je dois changer un composant.
Code:
1 2 3 4 5 6 7 8 9 10
|
JtextField tailleTf = new JtextField();
JCombobox tailleCb = new JComboBox(new TaillesModel());
...
if ( monTestEstCorrect ) {
// remplace tailleTf par tailleCb
} else {
// remplace tailleCb par tailleTf
} |
je pourrais :
1°
- Mettre en attribut les règles du layout
- récupèrer le container et y supprimer mon composant
- récupèrer le conatiner et y ajouter le nouveau avec les régles du layout
- faire un repaint() sur mon container()
--> Mais ça ne me semble pas trés efficace
2°
- Créer les deux composants
- Placer les deux composants l'un sur l'autre
- Modifier l'attribut visible de ces composants
--> Je n'aime pas vraiment l'idée de créer dexu composants pour n'en montrer qu'un. Ca risque de poser quelques problèmes vis à vis du Layout aussi.
3°
Quelqu'un à un autre idée ?
Merci