style="display:inline-block;width:728px;height:90px"
data-ad-client="ca-pub-5164839828746352"
data-ad-slot="7563230308">

Iniciando con JavaFX: Layouts - Introducción a los layouts

Retomando el "curso" de javafx daremos una introducción a lo que son los layouts.

¿Qué es un layout?

Layout en español tiene varias traducciones según su uso: disposición, diseño gráfico, plan. Pero el termino es usado para referirse a un esquema de distribución de elementos.

Los layouts en JavaFX

En javafx los layouts son llamados panels (paneles), estos son espacios/areas/regiones que siguen ciertas reglas para acomodar y cambiar el tamaño de los nodos en relación con sus propios tamaños. También se nos da la posibilidad de especificar una posición fija de nuestros componentes.

Características básicas de los layouts en JavaFX

Para conocer todos los paneles en JavaFX veamos la estructura de los nodos en la siguiente imagen: http://www.javamexico.org/system/files/JavaFX_0.png y nos vamos hasta la clase javafx.scene.layout.Pane, empecemos definiendo algunas de las características de cada tipo de panel:

  • VBox este panel nos brinda una forma simple para acomodar nodos en una fila.
  • HBox este otro panel nos brinda una forma simple para acomodar nodos en una columna.
  • BorderPane este tipo de panel provee 5 regiones para acomodar los nodos: arriba, abajo, izquierda, derecha y en el centro.
  • FlowPane proporciona una panel para agregar nodos de manera consecutiva, ya sea vertical o horizontal.
  • GridPane acomoda los nodos en una matriz/cuadricula con sus respectivas filas y columnas.
  • StackPane como su nombre lo indica este panel acomoda los nodos en una pila, unos en cima de otros.
  • TilePane este panel es parecido al FlowPane, los detalles los veremos en su correspondiente tema.
  • AnchorPane de nuevo, este panel es parecido a BorderPane, los detalles a su debido tiempo.

Hay además unas cuantas cosas que debemos saber de los layouts:

  • Cada layout tiene un método llamado setPadding heredado de Region que establece un relleno alrededor del nodo
  • Cada layout tiene un método setAlignment y setMargin teniendo como excepción el layout AnchorPane. Donde el primer método nos permite especificar la alineación y ordenamiento de los nodos hijo dentro del layout y el segundo método establece un margen en los nodos

Cabe destacar que para crear nuestros propios layouts no debemos extender de la clase Pane, sino de la clase Region.
Bueno, con esto terminamos la introducción a los layouts, mas adelante veremos ejemplos de cada uno de estos nodos.

style="display:inline-block;width:728px;height:90px"
data-ad-client="ca-pub-5164839828746352"
data-ad-slot="7563230308">