Problème avec la méthode setFill
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 :
Code:
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();
} |
-Class Bouton (personnalisé) :
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 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 :P ,mais j'ai vraiment besoin de votre aide, Merci !