TableWrapLayout

TableWrapLayout je mřížkové rozvržení, které je obdobou velmi všestranného mřížkového rozvržení SWT GridLayout. Odlišuje se použitím algoritmu rozvržení, který pracuje spíše jako tabulky HTML. Pokouší se respektovat poskytnutý klientský prostor a o kompenzaci rozdílu zvětšením ve svislém směru.

GridLayout a TableWrapLayout se podobají v řadě aspektů. Obě rozvržení organizují podřízené prvky do mřížek. Oba disponují údaji rozvržení, které rozvržení instruují o způsobu manipulace s jednotlivými obslužnými prvky. Obě rozvržení akceptují pokyny pro přidělení větší části prostoru určitým obslužným prvkům atd.

Zásadní rozdíl spočívá v přístupu k rozvržení. TableWrapLayout začíná od sloupců. Vypočte minimální, upřednostněné a maximální šířky jednotlivých sloupců a použije tuto informaci k přidělení přebytečného místa. Rovněž se pokusí o správné rozdělení prostoru mezi sloupce tak, aby u určitých obslužných prvků nedocházelo k nadměrnému obsazení prostoru.

GridLayout a TableWrapLayout lze vzájemně kombinovat, avšak větev, ve které je použito rozvržení GridLayout, nemá k dispozici zalamování. Toto je vhodné v případech, kdy není požadováno zalamování (pokud kompozitní prvek obsahuje obslužné prvky, které nelze zalomit, např. text, tlačítka nebo stromy atd.). Měli byste však mít neporušenou cestu z těla formuláře k jednotlivým obslužným prvkům typu text, které je zapotřebí zalomit.