Layout JavaFX

1 - Les conténeurs Layout JavaFX

Après avoir construit tous les nœuds requis dans une scène, nous souhaitons généralement les organiser au sein de la scène. Cette disposition des composants à l'intérieur du conteneur est appelée la disposition du conteneur (layout conteiner).
JavaFX à cet effet, fournit plusieurs mises en page prédéfinies telles que HBox, VBox, Border Pane, Stack Pane, Text Flow, Anchor Pane, Title Pane, Grid Pane, Flow Panel, etc....

Chacune des dispositions mentionnées ci-dessus est représentée par une classe et toutes ces classes appartiennent au package javafx.layout. La classe nommée Pane est la classe de base de toutes les mises en page dans JavaFX.

2 - Liste des Layout JavaFX

  1. HBox:  disposition HBox organise tous les nœuds de notre application sur une seule ligne horizontale. La classe nommée HBox du package javafx.scene.layout représente la disposition de la boîte horizontale de texte.
  2. GridPane: la disposition Grid Pane organise les nœuds de notre application sous la forme d'une grille de lignes et de colonnes. Cette mise en page est pratique lors de la création de formulaires à l'aide de JavaFX. La classe nommée GridPane du package javafx.scene.layout représente la disposition GridPane.
  3. VBox: la disposition VBox organise tous les nœuds de notre application dans une seule colonne verticale. La classe nommée VBox du package javafx.scene.layout représente la disposition de la zone verticale de texte.
  4. BorderPane: la disposition Border Pane organise les nœuds de notre application dans les positions supérieure, gauche, droite, inférieure et centrale. La classe nommée BorderPane du package javafx.scene.layout représente la disposition du volet de bordure.
  5. StackPane: la disposition du volet de pile organise les nœuds de notre application les uns sur les autres, comme dans une pile. Le nœud ajouté en premier est placé au bas de la pile et le nœud suivant est placé dessus. La classe nommée StackPane du package javafx.scene.layout représente la disposition du volet de pile.
  6. TextFlow: la disposition Flux de texte organise plusieurs nœuds de texte dans un flux unique. La classe nommée TextFlow du package javafx.scene.layout représente la disposition du flux de texte.
  7. AnchorPane: la disposition du volet Ancrage ancre les nœuds de notre application à une distance particulière du volet. La classe nommée AnchorPane du package javafx.scene.layout représente la disposition du volet d'ancrage.
  8. TilePane: la disposition Tile Pane ajoute tous les nœuds de notre application sous la forme de tuiles de taille uniforme. La classe nommée TilePane du package javafx.scene.layout représente la disposition TilePane.
  9. FlowPane: la disposition du volet de flux englobe tous les nœuds dans un flux. Un volet de flux horizontal enveloppe les éléments du volet à sa hauteur, tandis qu'un volet de flux vertical enveloppe les éléments à sa largeur.

3 - Exemple de layout: GridPane

Nous allons dans ce paragraphe créer un exemple de fenêtre JavaFX dont les noeuds sont gérés par le layout GridPane.
Nous commençon par définir et créer le layout par:

Nous pouvons aussi définir la marge interne du layout pan par:

Pour ajouter un composant: champ de texte, label, bouton de commande, on utilise le code:

et finalement pour ajouter un composant au layout pan on utilise le code:

Exemple

Exemple complet:

Ce qui affiche à la sortie:

On peut aussi paramétrer l'espace vertical et horizontal entre les composants par:

 

Younes Derfoufi
CRMEF OUJDA

Leave a Reply