J'ai fait une palette d'outils à partir d'un jdialog composé d'un JPanel boxlayout vertical. Ce JPanel contient des zones de palettes (class PaletteZone extends JPanel) repliables et dépliables.
Voilà mon petit soucis :
La méthode de la class PaletteZone utilisée pour replier (à partir d'un MouseClick event) est :
public void collapse(){
ContentVisible=false;
ZoneTitle.title.setIcon(rightTriangle);
// le component 0 est la barre de titre, le component 1 est l'ensemble d'icones :
this.remove(1);
JP.validate();
}
**** 1 ) en utilisant JP.validate(), je n'ai aucun scintillement (flickering) sur ma palette et le look est très fluide... MAIS malheureusement le JDialog n'est pas remis à la bonne taille. On obtient ceci en cliquant sur "construction" :
AVANT :
APRES :
**** 2 ) en utilisant JP.pack(), bien sûr le dialogue est correctement retaillé et redessiné, mais cela cause un scintillement qui m'exaspère fortement (tous les composants sont redessinés)
**** 3 ) en utilisant JP.setSize(), cela a le même effet qu'un pack...
Comment puis-je me sortir d'après vous de ce dilemne ???
[/img]









Répondre avec citation
Partager