Bonsoir tout le monde;
je viens de commencer avec JavaFX, et je le trouve plus riche que swing à première vue, Cependant, j'ai un peu de mal à m'y habituer, pour ce qui est de mon problème c'est tout simple, je n'arrive pas à définir une couleur pour ma forme "Shape", j'ai essayé avec la méthode "setFill" mais celle-ci ne change rien, ma forme prend la couleur du conteneur, je pense avoir loupé un truc mais je ne sais pas quoi, voici ce que j'ai dans mon code :
-Class main :
-Class Bouton (personnalisé) :
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 Bouton btn; @Override public void start(Stage primaryStage) throws Exception { primaryStage.initStyle(StageStyle.UNDECORATED); Group gp = new Group(); btn = new Bouton(gp); Scene sc = new Scene(gp,500,600); primaryStage.setScene(sc); primaryStage.show(); }
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 public class Bouton extends Pane{ private Rectangle rec; private double X,Y,H,W; private final Pane monPane = this; public Bouton(Group Conteneur){ Init(Conteneur); Dessiner(); } private void Init(Group Conteneur){ this.setLayoutX(20); this.setLayoutY(20); this.setPrefWidth(150); this.setPrefHeight(90); this.setStyle("-fx-background-color:#4169e1;"); Conteneur.getChildren().add(monPane); X = 6; Y = 6; W = 100; H = 40; } private void Dessiner(){ rec = new Rectangle(); rec.setHeight(H); rec.setWidth(W); rec.setLayoutX(X); rec.setLayoutY(Y); rec.setArcHeight(10); rec.setArcWidth(10); rec.setFill(Color.BLACK); /* ça ne marche pas ! */ monPane.setClip(rec); } }
Je sais que niveau structure du code, c'est pas beau à voir,mais j'ai vraiment besoin de votre aide, Merci !
Partager