TableWrapLayout es un diseño basado en una cuadrícula que es muy similar al versátil GridLayout de SWT. Difiere de éste en que utiliza un algoritmo de diseño que funciona de manera semejante a las tablas de HTML. Intenta respetar el área de clientes proporcionada y crecer verticalmente para compensar.
Hay muchas similitudes entre GridLayout y TableWrapLayout. Ambos organizan los hijos en cuadrículas. Ambos tienen datos de diseño que indican al diseño cómo debe tratar cada control. Ambos pueden aceptar sugerencias sobre qué control debe ocupar el espacio excedente, etc.
No obstante, difieren fundamentalmente en el enfoque que tienen
respecto al diseño.
TableWrapLayout
empieza con columnas. Calcula la anchura mínima,
preferida y máxima de cada columna y utiliza esta información para asignar el
espacio excedente.
También intenta ser justo al dividir el espacio entre columnas para que no haya
una acomodación excesiva de algunos controles.
Es posible mezclar GridLayout
y
TableWrapLayout
pero la rama en que se utilice GridLayout
es donde se detendrá la acomodación.
Esto es aceptable si no desea realizar la acomodación (si el compuesto contiene
controles que no pueden acomodarse, como texto, botones, árboles, etc.). No
obstante, debe tener una vía de acceso ininterrumpida desde el cuerpo del
formulario a cada control de texto que tenga que acomodar.