Use el método setAlignment en JavaFX

MD Aminul Islam 15 febrero 2024
Use el método setAlignment en JavaFX

HBox es un componente de diseño que posiciona todos los componentes. Por defecto, organizará todos los componentes en una fila horizontal, pero a veces es posible que necesitemos alinearlo a la izquierda, derecha, centro, arriba, botón, etc.

En este artículo veremos cómo podemos alinear el HBox en nuestro propio formato. Veremos un ejemplo y lo explicaremos línea por línea para que sea más fácil de entender.

Use el método setAlignment() en JavaFX

Las bibliotecas que vamos a utilizar en nuestro ejemplo son las siguientes:

import javafx.application.Application; // Package for the whole application
import javafx.geometry.Pos; // Geometric positioning Package for the variable "Pos"
import javafx.scene.Scene; // Package for the scene
import javafx.scene.control.Button; // Package for the button
import javafx.scene.layout.HBox; // The HBox Package
import javafx.stage.Stage; // Package for the stage

Estas son las librerías necesarias que debemos incluir, y el propósito fue comentado en el código. Ahora, vamos a describir todo el código.

Nuestro código principal se verá como el siguiente, y el propósito de cada línea se comenta al lado:

public class FxHBox extends Application { // Our main class extends to the Application class
  Button buttonOne, buttonTwo; // Declared two buttons
  HBox _hbox; // Declared a HBox
  Scene scene; // Declared a scene

  public void start(Stage BasicStage)
      throws Exception { // We have to use Exception Handling here as it can generate errors if
                         // anything goes wrong.
    BasicStage.setTitle("HBox Set Allignment"); // Set the  title of the application
    buttonOne = new Button("Button 1"); // Created button 1 with title
    buttonTwo = new Button("Button 2"); // Created button 2 with title

    _hbox = new HBox(buttonOne,
        buttonTwo); // Created an HBox element that holds the two buttons buttonOne & buttonTwo
    _hbox.setAlignment(
        Pos.CENTER); // Here we are customizing the default alignment and place our componet in
                     // center. Here 'Pos' provides the geometic allignment.

    scene = new Scene(_hbox, 400, 300); // Creates the scene with necessary heights and weights
    BasicStage.setScene(scene); // Set the scene
    BasicStage.show(); // Visualize the scene
  }

  public static void main(String[] args) {
    Application.launch(args); // Launch the application
  }
}

El punto principal que debe tener en cuenta aquí es cómo se utilizó el método setAlignment(). A través de este, podemos personalizar la posición del Hbox.

Hay varias alineaciones que podemos proporcionar a nuestros elementos. Estos se enumeran a continuación:

Posiciones Descripción
Pos.BASELINE_LEFT Alinear verticalmente Línea de base Alinear horizontalmente a la izquierda
Pos.BASELINE_CENTER Alinear verticalmente Línea base Alinear horizontalmente Centro
Pos.BASELINE_RIGHT Alinear verticalmente Línea de base Alinear horizontalmente a la derecha
Pos.BOTTOM_LEFT Alinear verticalmente abajo Alinear horizontalmente a la izquierda
Pos.BOTTOM_CENTER Alinear verticalmente Abajo Alinear horizontalmente Centro
Pos.BOTTOM_RIGHT Alinear verticalmente abajo Alinear horizontalmente a la derecha
Pos.CENTER_LEFT Alinear verticalmente al centro Alinear horizontalmente a la izquierda
Pos.CENTER Alinear verticalmente al centro Alinear horizontalmente al centro
Pos.CENTER_RIGHT Alinear verticalmente al centro Alinear horizontalmente a la derecha
Pos.TOP_LEFT Alinear verticalmente arriba Alinear horizontalmente a la izquierda
Pos.TOP_CENTER Alinear verticalmente Arriba Alinear horizontalmente Centro
Pos.TOP_RIGHT Alinear verticalmente arriba Alinear horizontalmente a la derecha

Ahora veamos la vista total de nuestro código de ejemplo y su salida. Puede copiar y pegar el código a continuación para realizar una prueba.

import javafx.application.Application;
import javafx.geometry.Pos;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.HBox;
import javafx.stage.Stage;

public class FxHBox extends Application {
  Button buttonOne, buttonTwo;
  HBox _hbox;
  Scene scene;

  public void start(Stage BasicStage) throws Exception {
    BasicStage.setTitle("HBox Set Allignment");
    buttonOne = new Button("Button 1");
    buttonTwo = new Button("Button 2");

    _hbox = new HBox(buttonOne, buttonTwo);
    _hbox.setAlignment(Pos.CENTER);

    scene = new Scene(_hbox, 400, 300);
    BasicStage.setScene(scene);
    BasicStage.show();
  }

  public static void main(String[] args) {
    Application.launch(args);
  }
}

Después de una compilación y ejecución exitosas, obtendrá un resultado como el siguiente:

setAlignment Salida JavaFX

Recuerde, si su IDE no admite la inclusión automática de bibliotecas, es posible que deba incluir los archivos de biblioteca necesarios manualmente antes de compilar.

MD Aminul Islam avatar MD Aminul Islam avatar

Aminul Is an Expert Technical Writer and Full-Stack Developer. He has hands-on working experience on numerous Developer Platforms and SAAS startups. He is highly skilled in numerous Programming languages and Frameworks. He can write professional technical articles like Reviews, Programming, Documentation, SOP, User manual, Whitepaper, etc.

LinkedIn

Artículo relacionado - Java JavaFX