Introduction à JavaFX HBox

JavaFX HBox est un composant qui présente les nœuds enfants de manière horizontale. Pour cette HBox, si des encarts sont présents, le contenu de HBox sera affiché dans ces encarts. La classe HBox est étendue par la classe Pane et peut être instanciée à partir de la classe JavaFX.scene.layout.HBox. Contrairement à VBox, l'ajout de plus d'enfants ne l'insérera pas sous le nœud enfant précédent, mais sur le côté droit du précédent.

Constructeurs de JavaFX HBox

Quatre constructeurs peuvent être utilisés pour implémenter HBox en Java.

  1. HBox (): une disposition HBox sera créée avec un espacement de 0.
  2. HBox (Double s): Une disposition HBox sera créée avec l'espacement s spécifié comme argument.
  3. HBox (Espacement double, nœuds enfants): une disposition HBox sera créée avec l'espacement et les nœuds enfants spécifiés dans l'argument.
  4. HBox (Node? Children): Une disposition HBox sera créée avec l'espacement 0 et les nœuds enfants spécifiés puisque l'espacement n'est pas défini, ici, il prend la valeur par défaut est 0.

Propriétés de JavaFX HBox

JavaFX HBox a trois propriétés comme indiqué ci-dessous.

  • alignement: propriété utilisée pour l'alignement des enfants dans la hauteur et la largeur de HBox.
  • fillHeight: les nœuds enfants redimensionnables seront redimensionnés à la hauteur HBox ou conservés à la hauteur préférée lors de la définition de cette propriété sur true.
  • spacing: La quantité d'espace horizontal entre les nœuds enfants dans HBox sera définie.

Top 15 des méthodes de JavaFX HBox

Voici les méthodes couramment utilisées dans JavaFX HBox.

  • getSpacing (): la valeur de la propriété Spacing sera retournée.
  • getHgrow (Nodechild): la valeur de la propriété Hgrow sera retournée.
  • setFillHeight (valeur booléenne): la valeur de la propriété FillHeight sera définie.
  • clearConstraints (Nodechild): les contraintes HBox seront supprimées du nœud enfant.
  • isFillHeight (): la valeur de la propriété FillHeight sera retournée.
  • setAlignment (Posvalue): la valeur de la propriété d'alignement sera définie.
  • setSpacing (double valeur): la valeur de la propriété Spacing sera définie.
  • getMargin (Nodechild): la valeur de la propriété Margin sera retournée.
  • spacingProperty (): l' espace horizontal entre les nœuds enfants dans HBox sera défini.
  • setMargin (Nodechild, Insets value): la marge pour l'enfant sera définie dans la HBox.
  • computeMinWidth (double hauteur): la largeur minimale de la région sera calculée à l'aide de cette méthode.
  • computeMinHeight (double largeur): la hauteur minimale de la région sera calculée à l'aide de cette méthode.
  • getAlignment (): la valeur de la propriété d'alignement sera retournée.
  • computePrefWidth (double hauteur): la largeur préférée pour la région qui est nécessaire pour la hauteur donnée sera calculée.
  • computePrefHeight (double largeur): la hauteur préférée pour la région qui est nécessaire pour la largeur donnée sera calculée.

Exemples de JavaFX HBox

Voyons maintenant quelques exemples de HBox avec certaines des méthodes expliquées dans la section ci-dessus.

Exemple 1

Tout d'abord, 2 boutons b1 et b2 sont créés avec le texte "Sample button 1 pour HBox" et "Sample button 2 pour HBox". Ensuite, créez une HBox et une scène. Après avoir réglé la scène, les résultats seront affichés.

Code:

//Java program to create a HBox
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.HBox;
import javafx.stage.Stage;
//class that extends Application base class
public class JavaFXHBoxExample extends Application (
//application starts at this point
@Override
public void start(Stage s) throws Exception (
s.setTitle("HBox Example");
//create button 1
Button b1 = new Button("Sample button 1 for HBox");
Button b2 = new Button("Sample button 2 for HBox");
//create HBox
HBox hb = new HBox();
//create scene
Scene sc = new Scene(hb, 400, 200);
//add them
hb.getChildren().addAll(b1, b2);
//set the scene
s.setScene(sc);
//display the result
s.show();
)
//main method
public static void main(String() args) (
launch (args);
)
)

Production:

Exemple # 2

Tout d'abord, créez une HBox et une étiquette. Ensuite, ajoutez l'étiquette créée à HBox. Créez des boutons à l'aide d'une boucle for afin que la syntaxe de création de bouton n'ait pas besoin d'être réécrite. Créez une scène et définissez-la. Après avoir réglé la scène, les boutons s'affichent au centre.

Code:

//Java program to demonstrate JavaFX HBox with center alignment
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.*;
import javafx.scene.layout.*;
import javafx.stage.Stage;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.scene.Group;
import javafx.geometry.Pos;
//class that extends Application class
public class JavaFXHBoxExample extends Application (
// application starts at this point
public void start(Stage s)
(
try (
// set title
s.setTitle("HBox Example");
// create HBox
HBox hb = new HBox(10);
// create label
Label lb = new Label("Hey … This is the sample for JavaFX HBox !!");
// add the created label to HBox
hb.getChildren().add(lb);
// set alignment of the HBox
hb.setAlignment(Pos. CENTER );
// add buttons to HBox
for (int i = 0; i < 4; i++)
(
hb.getChildren().add(new Button("Sample Button " + (int)(i + 1)));
)
// create a scene
Scene sc = new Scene(hb, 700, 300);
// set the scene
s.setScene(sc);
s.show();
)
//catch the exception
catch (Exception e) (
System. out .println(e.getMessage());
)
)
// Main Method
public static void main(String args())
(
// launch the application
launch (args);
)
)

Production:

Exemple # 3

Tout d'abord, HBox est créé avec un rembourrage et des inserts. Ensuite, créez une étiquette avec une police personnalisée. Après cela, créez 4 boutons et une scène. Enfin, définissez la scène et affichez les résultats.

Code:

//Java program to create HBox with padding and insets
import javafx.application.Application;
import javafx.geometry.Insets;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.Label;
import javafx.scene.layout.HBox;
import javafx.scene.text.Font;
import javafx.scene.text.FontWeight;
import javafx.stage.Stage;
public class JavaFXHBoxExample extends Application (
//main method
public static void main(String() args) (
Application. launch (args);
)
//application starts at this point
@Override
public void start(Stage s) (
//set title
s.setTitle("HBox Sample");
// Create HBox
HBox hb = new HBox();
//set padding
hb.setPadding(new Insets(10, 50, 50, 50));
//set spacing
hb.setSpacing(10);
//create label
Label lbl = new Label("This is the HBox");
//set font properties
lbl.setFont(Font. font ("Amble CN", FontWeight. BOLD, 24));
hb.getChildren().add(lbl);
// create Buttons
Button b1 = new Button();
b1.setText(" I am Button1");
hb.getChildren().add(b1);
Button b2 = new Button();
b2.setText("I am Button2");
hb.getChildren().add(b2);
Button b3 = new Button();
b3.setText("I am Button3");
hb.getChildren().add(b3);
Button b4 = new Button();
b4.setText("I am Button4");
hb.getChildren().add(b4);
// Add HBox to the scene that is created
Scene sc = new Scene(hb);
s.setScene(sc);
s.show();
)
)

Production:

Conclusion

JavaFX HBox est un composant qui aide les nœuds enfants à se mettre en page horizontalement. En outre, le nouvel enfant sera ajouté directement à l'enfant précédent.

Article recommandé

Ceci est un guide de JavaFX HBox. Nous discutons ici des constructeurs, des méthodes et des propriétés de JavaFX HBox ainsi que de l'implémentation de code. vous pouvez également consulter nos articles suggérés pour en savoir plus -

  1. Top 5 des mises en page JavaFX
  2. Applications JavaFX avec fonctionnalités
  3. JavaFX vs Swing | Comparaison des 6 meilleurs
  4. Étiquette JavaFX (exemples)
  5. Comment créer une case à cocher dans JavaFX avec des exemples?
  6. Exemples pour implémenter la case à cocher dans Bootstrap
  7. Guide complet de JavaFX Color
  8. JavaFX VBox | Top 15 des méthodes de JavaFX VBox