一個友好的讀者界面是一款軟體成功的關鍵因素之一。布局管理器就是用來管理讀者的界面。擺放的效果直接影響到界面是否美觀。布局管理器通過布局管理類來對各種讀者元件進行管理。
使用布局管理器,不僅可以有序的排列元件,而且當窗體發生變化時,布局管理器很根據新版面來适配視窗大小。
如果設計時未指定元件的布局管理器,則使用預設布局管理器。預設布局管理器層次關系如圖所示:

下面為大家介紹幾種常用的布局管理器。
borderlayout是定義在awt包中的布局管理器。borderlayout把容器簡單的劃分為東、西、南、北、中5個區域,當使用該布局時,要指明元件添加在哪個區域。若為指明則預設加入到中間區域。每個區域隻能加入一個元件,後加入的元件會覆寫前面一個。
方法名
說明
borderlayout()
構造一個元件之間沒有間距的新邊框布局
borderlayout(int hgap, int vgap)
構造一個具有指定元件間距的邊框布局
下面通過一個示例來示範borderlayout的使用
運作效果:
flowlayout是定義在awt包中的布局管理器。flowlayout預設的對齊方式為居中對齊,可以在執行個體對象的時候指定對齊方式。flowlayout布局方式為自左向右排列,當一行排滿後自動換行。
flowlayout()
構造一個新的 flowlayout,它是居中對齊的,預設的水準和垂直間隙是 5 個機關
flowlayout(int align)
構造一個新的 flowlayout,它具有指定的對齊方式,預設的水準和垂直間隙是 5 個機關
flowlayout(int align, int hgap, int vgap)
建立一個新的流布局管理器,它具有指定的對齊方式以及指定的水準和垂直間隙
gridlayout是定義在awt包中的布局管理器。gridlayout布局管理器将元件按照網格方式排列,将容器分成規則矩形塊,每個元件盡可能占據每塊空間。
gridlayout()
建立具有預設值的網格布局,即每個元件占據一行一列
gridlayout(int rows, int cols)
建立具有指定行數和列數的網格布局
gridlayout(int rows, int cols, int hgap, int vgap)
下面通過一個示例來示範gridlayout的使用
顧名思義,絕對位置布局就是不使用任何布局管理器,将元件放在固定的位置。正常情況下不建議使用該方式,使用這種方式元件的位置和大小不會自動适配,當容器大小改變時,元件顯示效果可能會變的不理想。