Saltar la navegación

5.4.- Ubicación y alineamiento de los componentes.

Internamente la herramienta emplea el mecanismo de Java para disponer los elementos llamado Layout, distribución o diseño. Swing dispone de ocho tipos de distribuciones:

  • BoderLayout: aloja los componentes en los límites del formulario, por lo que cuando los colocamos debemos indicar si van al norte, sur este u oeste.
  • GridLayout: Diseña mediante una rejilla, en la que los componentes se organizan por filas y columnas.
  • GridBagLayout: semejante a GridLayout, pero permite a un componente que ocupe más de una celda.
  • CardLayout: diseño por paneles. Permite la colocación de distintos componentes en momentos distintos de la ejecución.
  • BoxLayout: diseño en caja. Coloca los componentes en una fila o columna ajustándose al espacio que haya.
  • FlowLayout: diseña alojando los componentes de izquierda a derecha mientras quede espacio, si no queda pasa a la fila siguiente.
  • GroupLayout: se creó para ser utilizado en herramientas de diseño gráfico de interfaces. Trabaja por separado la distribución vertical y horizontal para definir exactamente el posicionamiento de los componentes. Se utiliza en NetBeans.
  • SpringLayout: es muy flexible y se usa también para herramientas de diseño gráfico de interfaces. En este caso se especifican las relaciones entre los límites de los componentes bajo su control.

Programar el diseño de un formulario es una de las tareas más arduas en Java, si bien está ampliamente superado gracias al uso de IDEs que facilitan la colocación de componentes a golpe de ratón y sin necesidad de escribir código. Por ejemplo, NetBeans, usa el diseño GroupLayout.

Ejercicio resuelto

Las guías que aparecen cuando se añaden elementos a un formulario facilitan sobremanera la colocación de los elementos, aunque se puede hacer necesaria algo más de precisión, para ello podemos usar los botones de alineamiento que encontramos sobre la zona de diseño. Utiliza los iconos de alineación de componentes para alinear horizontalmente los componentes para especificar la profesión, y también los componentes que preguntan por el número de hermanos y la edad. Para alinear las aficiones utiliza la alineación en columna a la derecha para las etiquetas y a la izquierda para los deslizadores.

Modifica el ancho de aquellos controles que consideres conveniente para armonizar el formulario.

Ilustración de una captura de pantalla que muestra la manera diseñar  varios componentes de una interfaz utilizando NetBeans.
Montaña Martín Vergel (Elaboración propia)

Debes conocer

En el siguiente enlace puedes encontrar los archivos del proyecto de NetBeans con la aplicación que hemos estado haciendo. Te recomiendo que le eches un vistazo para comprobar los nombres que se les han puesto a las variables, los ToolTipText, etc.

Enlace al ejemplo. (zip - 40,16 KB)