Composite ne veux pas se mettre à jour
Bonjour,
J'ai un petit soucis avec mes Composite SWT. Je possède 2 Composites superposés grâce à un StackLayout(). Le premier me permet de sélectionner un élément dans un tableau et le second me permet de visualiser les détails de cet éléments suite à un double-click.
Tout fonctionne bien la première fois : Je double-click sur l'élément A dans le tableau et le secons Composite m'affiche les détails de A. Mais quand je reviens dans le tableau de sélection et que je double-click sur B, le second Composite reste sur A (alors qu'en débug il met bien les labels avec l'élément B).
Bref, je n'arrive pas à rafraichir mon Composite.
Voici le code qui gère l'affichage :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
| public void displaySruDetailView(SRU sruToDisplay) {
if(this.sruDetailsView == null) {
this.sruDetailsView = new SruDetailsViewForm(this.righComposite, sruToDisplay);
} else {
this.sruDetailsView.setSruToDisplay(sruToDisplay, true);
}
((StackLayout)this.righComposite.getLayout()).topControl = this.sruDetailsView;
this.sruDetailsView.openForm();
this.righComposite.layout();
} |
Ma méthode setSruToDisplay est censée mettre à jour les labels avec les détails de l'objet passé en paramètres (this.mainLabel = new Label...)
Pour info this.sruDetailsView hérite de Composite.
Bref je ne vois pas comment mettre à jour l'affichage de mon Composite sans en créer un nouveau à chaque fois. J'ai essayé Layout(), Redraw() etc... et rien.
Merci d'avance pour vos réponses.