Bonjour,
J'aurais voulu savoir s'il était possible de faire une fenêtre "pop-up" en JavaFx et si oui comment ?
Merci d'avance
Version imprimable
Bonjour,
J'aurais voulu savoir s'il était possible de faire une fenêtre "pop-up" en JavaFx et si oui comment ?
Merci d'avance
On peut faire des notifications de base avec la classe Alert (mais c'est vraiment de base mais c'est portable) et pour des boites de dialogues similaires à des JDialog il faut utiliser la lib JFXtras-06 et sa classe XDialog (profils desktop et browser. Vérifier dans la javafxdoc de JFXtras si c'est désormais également supporté en profil mobile).
Merci de t'as réponse.
Donc j'ai cherché des informations sur la classe XDialog mais je n'ai pas tout bien compris. Ne serait-ce que pour les "import" que je dois faire je n'ai pas trouvé.
En fait, j'ai déjà une fenêtre de créé où l'utilisateur doit rentrer son e-mail et son login mais c'est une fenêtre classique et je voudrais que ce soit une fenêtre "pop-up". Est-ce que tu pourrais m'en dire un peu sur la classe XDialog ou me passe des liens de site où je pourrais trouver des exemples de code intéressant?
Merci d'avance
Salut voici un exemple:
liens:Code:
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 1package main; import javafx.stage.Stage; import javafx.ext.swing.SwingButton; import org.jfxtras.stage.XDialog; import org.jfxtras.scene.XScene; import javafx.scene.control.Label; /** * @author Alex */ Stage { title: "DIALOG" scene: XScene { width: 200 height: 200 content: [ SwingButton { text: "Button" action: function () { XDialog { modal:true scene: XScene { width: 300 height: 300 content: [ Label { text: "COUCOU, je m'appel modal" } ] } } } } ] } }
JFXtras
Documentation
Y a aussi possibilité de spécifier le Stage parent dans le membre owner quand on conserve une référence dessus (ou qu'on programme en FX de manière plus Java-like).
Ouais et pis on peux même faire comme ca, c'est plus classe ;)
T'as de la chance Stefounette. :)Code:
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 Stage { title: "DIALOG" scene: XScene { width: 200 height: 200 content: [ Button { text: "Button" action: function () { def xd: XDialog = XDialog { style: StageStyle.UNDECORATED modal:true scene: XScene { width: 300 height: 300 content: [ Rectangle { width: 300 height: 300 arcWidth: 20 arcHeight: 20 } VBox { nodeHPos: HPos.CENTER spacing: 20 content: [ Label { text: "COUCOU, je m'appel modal" textFill: Color.WHITE } Button { text: "FERMER" action: function () { xd.close(); } } ] } ] } } } } ] } }
Ok, merci de vos réponses :)