Bonjour à tous

J'ai deux variable de type scene : sceneList et sceneDetail.
En gros, je veux pouvoir changer de scene en restant dans la même fenêtre. Je suis dans sceneList, je clique et je change la variable scene du Stage. Du coup, c'est sceneDetail qui apparait.
Ca marche bien, excepté la deuxième scene qui est mal rendue : tous les composants swing sont empilés. Il suffit que je retaille la fenêtre pour que les composants se replace comme il faut.

ci-dessous, le code de la classe
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
 
var instance: BanqueListeWindow_2=null;
 
public function getInstance():BanqueListeWindow_2{
    if (instance == null) {
        instance=BanqueListeWindow_2{
        };
    }
    return instance;
}
 
//la classe qui correspond à la fenêtre, initialisée avec sceneList
public class BanqueListeWindow_2 extends Stage{
    override var title= "Application";
    override var visible=true;
    override var scene = sceneList};
    override var onClose= function(){instance=null;}
}
 
 
var sceneList:Scene = Scene {
    width: 600
    height: 400
    content: [      SwingButton { text: "Validate" action: function() { println("sceneList"); instance.scene=sceneDetail;}}
    ]
}
 
 
var sceneDetail:Scene = Scene {
    width: 600
    height: 400
    content:  [
            VBox{spacing:10
                content: [
                    HBox {
                        translateY: 15
                        translateX: 15
                        spacing: 10
                        content: [
                            SwingLabel {
                                text: "Name"
                                font: Font {
                                    name: "Arial",
                                    size: 16,
                                    embolden: true
                                }
                            },
                            SwingTextField {
                                columns: 10
                                text: "Bank"
                                editable: true
                            }
                        ]
                    },//Hbox
                    SwingButton {
                        text: "Validate"
                        action: function() { println("sceneListe"); instance.scene=sceneList;}
                    }
                ]
           }//VBox
    ]
 
}
Y-a-t-il une fonction pour effectuer un refresh d'un scene ?
S'agit-il d'un bug ?

Il est possible que je m'y prenne mal. Comment je dois faire alors ?

Merci de vos réponses
Adrien