TableWrapLayout

TableWrapLayout 是一種非常類似 SWT 多用途 GridLayout 的格線佈置。但不同於 GridLayout,差別在於採用類似 HTML 表格的佈置演算法。先依據提供的用戶端區域寬度來填滿,再於垂直方向延伸調整。

GridLayout 和 TableWrapLayout 之間有許多相似處。兩者都以格線組織子項。兩者都有佈置資料, 用來說明佈置如何處理每一個控制項。兩者可接受提示,供控制項抓取額外空間等。

不過,它們基本上在佈置的做法上有所不同。TableWrapLayout 是以直欄開始。它會計算每一個直欄的最小、最適和最大寬度, 並使用這項資訊來指派額外的空間。它也會嘗試在直欄之間公平切割空間,使得某些控制項沒有過多的折返。

您可以混用 GridLayout TableWrapLayout,但使用 GridLayout 的分支就是停止折返的位置。 如果您不要折返,這是可以接受的(如果複合項包含的控制項無論如何都無法折返, 像是文字、按鈕、目錄樹等等)。不過,從表單主體至每一個需要折返的文字控制項之間,TableWrapLayouts 的路徑不能中斷。