1 pièce(s) jointe(s)
Petit éclaircissement sur les dimensions d'une scène
Bonjour à vous !
J'ai une petite question, et vous allez peut-être pouvoir améliorer ma vision des choses sur les scènes.
Je veux faire quelque chose d'extrêmement basique :
Pièce jointe 562032
La zone du haut en rouge serait une ToolBar avait des boutons, et pas zone jaune sur le côté, un simple rectangle de couleur où j'y déposerait des formes.
Classiquement, j'ai utilisé une ToolBar de JavaFX pour le haut avec des boutons ( et ça marche très bien ). Et j'ai simplement dessiné un rectangle d'une certaine taille sur la gauche.
Le soucis est néanmoins le suivant : Je ne sais pas quel container utilisait pour mettre ses deux "trucs" dedans. J'ai commencé par un flowPane, mais la toolbar ne remplissait pas tout le haut. Alors je suis parti par la suite sur un BorderPane pour contenir le tout, et faisant un .setTop pour le toolbar et un .setRight pour le rectangle. Le soucis est que le rectangle ne s'affiche pas. J'ai ensuite utilisé un VBox mais même résultat. Et j'ai peur que la BorderPane soit contraignant car je ne veux pas utiliser la partie droite et du bas. J'aimerai un découpage comme je l'ai fais sur cette image.
Auriez vous une idée ?
Mon code étant le suivant si cela peut vous aider à m'éclairer :
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
| //Principal container
private Scene scene;
//Second container
private VBox window;
//Toolbar for button
private ToolBar toolbar;
//Button for action
private Button save;
private Button undo;
private Button redo;
private Button load;
public JavaFXWindow() {
}
@Override
public void start(Stage primaryStage) throws Exception {
this.window = new VBox();
this.window.setPrefHeight(1000);
this.window.setPrefWidth(1000);
//Construction de la toolbar du haut, avec les différents boutons
this.save = new Button("Save");
this.load = new Button("Load");
this.undo = new Button("Undo");
this.redo = new Button("redo");
this.toolbar = new ToolBar();
this.toolbar.getItems().addAll(save,load,undo,redo);
this.toolbar.setOrientation(Orientation.HORIZONTAL);
this.window.getChildren().add(toolbar);
//Contruction de la toolbar de droite
double maxX = this.window.getWidth()/5;
double maxY = (this.window.getHeight()/10)*9;
System.out.println("MaxY: " + maxY + " MaxX: " + maxX);
Rectangle rectangle = new Rectangle(0,0,maxX,maxY);
rectangle.setFill(Color.GREY);
rectangle.setStroke(Color.BLACK);
this.window.getChildren().add(rectangle);
this.scene = new Scene(window,1000,1000);
primaryStage.setTitle("Test");
primaryStage.setScene(this.scene);
primaryStage.show(); |