Bonjour,
voila
j'ai une classe étendue à JFrame qui contient un JXCollapsiblePane (de swingx). Un bouton permet d'enrouler/dérouler cet élément. voici le code qui l'implémente :
J'aimerai qu'un clic sur le bouton "pack" la fenetre juste après l'animation d'enroulement/déroulement du JXCollapsiblePane.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 // Show/hide the Pane Action foldUnfold = _panelAdvanced.getActionMap().get(JXCollapsiblePane.TOGGLE_ACTION); foldUnfold.putValue(JXCollapsiblePane.COLLAPSE_ICON, UIManager.getIcon("Tree.expandedIcon")); foldUnfold.putValue(JXCollapsiblePane.EXPAND_ICON, UIManager.getIcon("Tree.collapsedIcon")); JButton toggle = new JButton(foldUnfold); toggle.setText("Advanced Settings");
Pour le moment j'ai essayé :
-d'enregistrer un autre listener sur le bouton, mais le problème est que celui-ci est traité avant le PropertyChangeListener de foldUnfold.
-de redéfinir la méthode setCollapsed contenue par la classe ToggleAction appellée par JXCollapsiblePane. Cela ne marche pas car ToggleAction est une classe privée.
voici le code source de JXCollapsiblePane
Voila, je vous invite à me faire part de vos suggestions
merci
Partager