JavaFX - Diseño GridPane
Si usamos Grid Pane en nuestra aplicación, todos los nodos que se le agregan están ordenados de manera que forman una cuadrícula de filas y columnas. Este diseño es útil al crear formularios con JavaFX.
La clase nombrada GridPane del paquete javafx.scene.layoutrepresenta el GridPane. Esta clase proporciona once propiedades, que son:
alignment - Esta propiedad representa la alineación del panel y puede establecer el valor de esta propiedad utilizando el setAlignment() método.
hgap - Esta propiedad es del tipo double y representa el espacio horizontal entre columnas.
vgap - Esta propiedad es del tipo double y representa el espacio vertical entre filas.
gridLinesVisible- Esta propiedad es de tipo booleano. En verdadero, las líneas del panel están configuradas para ser visibles.
A continuación se muestran las posiciones de las celdas en el panel de cuadrícula de JavaFX:
(0, 0) | (1, 0) | (2, 0) |
(2, 1) | (1, 1) | (0, 1) |
(2, 2) | (1, 2) | (0, 2) |
Ejemplo
El siguiente programa es un ejemplo del diseño del panel de cuadrícula. En esto, estamos creando un formulario usando un Panel de cuadrícula.
Guarde este código en un archivo con el nombre GridPaneExample.java.
import javafx.application.Application;
import javafx.geometry.Insets;
import javafx.geometry.Pos;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.GridPane;
import javafx.scene.text.Text;
import javafx.scene.control.TextField;
import javafx.stage.Stage;
public class GridPaneExample extends Application {
@Override
public void start(Stage stage) {
//creating label email
Text text1 = new Text("Email");
//creating label password
Text text2 = new Text("Password");
//Creating Text Filed for email
TextField textField1 = new TextField();
//Creating Text Filed for password
TextField textField2 = new TextField();
//Creating Buttons
Button button1 = new Button("Submit");
Button button2 = new Button("Clear");
//Creating a Grid Pane
GridPane gridPane = new GridPane();
//Setting size for the pane
gridPane.setMinSize(400, 200);
//Setting the padding
gridPane.setPadding(new Insets(10, 10, 10, 10));
//Setting the vertical and horizontal gaps between the columns
gridPane.setVgap(5);
gridPane.setHgap(5);
//Setting the Grid alignment
gridPane.setAlignment(Pos.CENTER);
//Arranging all the nodes in the grid
gridPane.add(text1, 0, 0);
gridPane.add(textField1, 1, 0);
gridPane.add(text2, 0, 1);
gridPane.add(textField2, 1, 1);
gridPane.add(button1, 0, 2);
gridPane.add(button2, 1, 2);
//Creating a scene object
Scene scene = new Scene(gridPane);
//Setting title to the Stage
stage.setTitle("Grid Pane Example");
//Adding scene to the stage
stage.setScene(scene);
//Displaying the contents of the stage
stage.show();
}
public static void main(String args[]){
launch(args);
}
}
Compile y ejecute el archivo java guardado desde el símbolo del sistema utilizando los siguientes comandos.
javac GridPaneExample.java
java GridPaneExample
Al ejecutarse, el programa anterior genera una ventana JavaFX como se muestra a continuación.