Je souhaiterais ajouter un JPanel à mon application , mais
en cours d'éxécution ,
comment puis-je faire ?
[Modéré par Didier]
Ajout de tag dans le titre
Lire les règles du forum : Règles du forum Java
Je souhaiterais ajouter un JPanel à mon application , mais
en cours d'éxécution ,
comment puis-je faire ?
[Modéré par Didier]
Ajout de tag dans le titre
Lire les règles du forum : Règles du forum Java
Pour être plus précis .
Dans mon application , j'ai comme LayoutManager de plus haut
niveau un BoxLayout ( en Y_AXIS ).
Ce layout gère deux JPanel .
Au démarrage , mon application ne doit afficher que le premier .
Je souhaite afficher le deuxieme uniquement après une action .
Pour cela j'ai écrit .
client.setVisible(false); // Client est le JPanel en question
et dans le traitement de l'action je le remets à true.
Mais ce ne marche pas!
Quelqu'un peut-il m'aider ?
Bonjour,
De mémoire: une fois que tu as fais ton action
tu dois faire un repaint() sur ton layout de plus haut niveau (ton BoxLayout, si j'ai bien compris).
Code : Sélectionner tout - Visualiser dans une fenêtre à part client.setVisible(true);
@+
Malheureusement j'y avais pensé mais il n'existe pas
de méthode repaint pour BoxLayout (et pour les layout en général).
Par contre j'ai essayé une méthode plus proche :
layout_racine.invalidateLayout(this)
// layout_racine est le BoxLayout et this le container associé
Mais ca ne marche pas !
Que faire?
essaie un repaint sur le container du boxlayout
Perso je pense qu'il faut que du face un validate() sur ton container
Ca ne marche pas non plus .
Un peu plus de précision pour comprendre mon prob :
-Si je fais l'inverse c.à.d je déclare le JPanel à true ,
puis à l'issue de l'action je le mets à false .
Ca marche mais le JPanel reste présent en terme d'espace
il est juste invisible .
Ceci veut dire que l'appli garde les calculs effectues par le
BoxLayout . (mème apres un invalidate )
Ce qu'il faudrait c'est que le BoxLayout recalcule la disposition
de ces composants .
Est-ce possible ou faut-il réimplementer son propre Layout ?
Je remercie grandement JWillow .
Apres validate sur le container , tout fonctionne
Merci encore .
Partager