Layouts

Posted by in Componentes JavaFX, Java, JavaFx

Como ya se explicó en entradas tanto de Android como de Swing, los layouts sirven para gestionar el espacio y la colocación de los elementos gráficos de la interfaz. Los layouts disponibles en JavaFx son:

  • BorderPane
  • HBox
  • VBox
  • StackPane
  • GridPane
  • FlowPane
  • TilePane
  • AnchorPane

Hay que tener en cuenta que se pueden combinar los layouts gestionando layouts dentro de layouts.

BorderPane

Layout basado en la situación de elementos en los puntos cardinales norte, sur, este, oeste o centro, dividiendo la pantalla en cada uno de los “sub-contentenedores” correspondientes. Para poder instancias este tipo de layout:

Dentro de la gestión del SceneBuilder, en la parte de las propiedades se pueden gestionar diversos aspectos de la colocación, orientación, etc… de cada uno de los nodos del panel. Si se quiere codificar, sería una propiedad dentro de cada una de las etiquetas de los elementos en cuestión

HBox VBox

Tanto el layout HBox como el VBox disponen los elementos en una fila, bien sea horizontal o vertical.

Una de las características importantes de estos layout es el de padding y el spacing ya que marcará la distancia entre cada uno de los componentes

StackPane

Se trata de un panel en forma de pila donde cada uno de los elementos se coloca encima del anterior, superponiéndose. Se asemeja al layout FrameLayout de android

GridPane

El GridPane permite crear interfaces flexibles organizando los elementos en filas y columnas. Hay que tener en cuenta que cada elemento se puede poner en cualquier celda del panel

Anchor Pane

Un panel Anchor Pane está formado por elementos situados de forma fija en una posición denterminada definida por las características layoutX y layoutY. En es caso del Anchor Pane cuando la ventana se redimensiona los elementos siguen manteniendo su posición determinada