TableWrapLayout 是一個網柵型的佈置,與多用途的 SWT GridLayout 很類似。 不同的是它使用了運作起來比較像 HTML 表格的佈置演算法。它嘗試遵循提供的用戶端區, 並透過垂直擴充來彌補。
GridLayout 和 TableWrapLayout 之間有許多相似處。兩者都以網柵組織子項。兩者都有佈置資料, 用來說明佈置如何處理每一個控制項。兩者都可以接受控制項應在何處取得額外空間的提示等等。
不過,它們基本上在佈置的做法上有所不同。TableWrapLayout
是以直欄開始。它會計算每一個直欄的最小、最適當和最大寬度,
並使用這項資訊來指派額外的空間。它也會嘗試在直欄之間公平切割空間,使得某些控制項沒有過多的折返。
您可以混用 GridLayout
和
TableWrapLayout
,但使用 GridLayout
的分支就是停止折返的位置。如果您不要折返,這是可以接受的(如果複合項包含的控制項無論如何都無法折返,像是文字、按鈕、目錄樹等等). 不過,您應該有從表單主體到每一個需要折返之文字控制項的未分割路徑。