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
The path of excess
leads to the tower of wisdom.
(Enigma)
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 .
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager