TableWrapLayout

TableWrapLayout è un layout basato su griglia molto simile al GridLayout di SWT. Si differenzia da questo perché utilizza un algoritmo di layout con un funzionamento più simile a quello delle tabelle HTML. Cerca di rispettare l'area client fornita e cresce in verticale per compensare.

Ci sono molte similitudini tra GridLayout e TableWrapLayout. Entrambi organizzano gli elementi secondari in griglie. Entrambi hanno dati di layout che indicano al layout come gestire ciascun controllo. Entrambi possono accettare suggerimenti su quale controllo deve utilizzare lo spazio in eccesso, ecc.

Tuttavia, differiscono in modo fondamentale nell'approccio al layout. TableWrapLayout inizia con le colonne. Calcola le larghezze minima, preferita e massima di ogni colonna ed utilizza queste informazioni per assegnare lo spazio in eccesso. Inoltre cerca di dividere lo spazio tra le colonne in modo equilibrato, in modo che non ci sia un ritorno a capo eccessivo per alcuni controlli.

È possibile combinare GridLayout e TableWrapLayout ma la sezione in cui si utilizza GridLayout è quella in cui si arresta il ritorno a capo. Questo è accettabile se non sono richiesti ritorni a capo (se la struttura composta contiene controlli che non possono essere portati a capo, quali testo, pulsanti , strutture, ecc.). Tuttavia, è necessario avere un percorso attivo dal corpo del modulo a ciascun controllo di testo che deve essere riportato a capo.