- Swing 教程
- Swing - 首頁
- Swing - 概述
- Swing - 環境
- Swing - 控制元件
- Swing - 事件處理
- Swing - 事件類
- Swing - 事件監聽器
- Swing - 事件介面卡
- Swing - 佈局
- Swing - 選單
- Swing - 容器
- Swing 有用資源
- Swing - 快速指南
- Swing - 有用資源
- Swing - 討論
Swing - 佈局
佈局是指容器內元件的排列方式。換句話說,佈局可以理解為將元件放置在容器內的特定位置。佈局管理器會自動完成控制元件的佈局任務。
佈局管理器
佈局管理器會自動在容器內定位所有元件。即使您不使用佈局管理器,元件也會由預設的佈局管理器定位。也可以手動佈局控制元件,但是由於以下兩個原因,這會變得非常困難。
處理容器內大量控制元件非常繁瑣。
通常,當我們需要排列元件時,不會給出元件的寬度和高度資訊。
Java 提供了各種佈局管理器來定位控制元件。尺寸、形狀和排列等屬性因佈局管理器而異。當小程式或應用程式視窗的大小發生變化時,元件的大小、形狀和排列也會相應地發生變化,即佈局管理器會適應 AppletViewer 或應用程式視窗的尺寸。
每個容器物件都關聯了一個佈局管理器。每個佈局管理器都是實現 LayoutManager 介面的類的物件。
以下是定義佈局管理器功能的介面。
| 序號 | 介面及描述 |
|---|---|
| 1 | LayoutManager
LayoutManager 介面聲明瞭需要由該類實現的方法,該類的物件將充當佈局管理器。 |
| 2 | LayoutManager2
LayoutManager2 是 LayoutManager 的子介面。此介面適用於瞭解如何根據佈局約束物件佈局容器的類。 |
AWT 佈局管理器類
以下是使用 AWT 設計 GUI 時常用的控制元件列表。
| 序號 | 佈局管理器及描述 |
|---|---|
| 1 | BorderLayout
BorderLayout 將元件排列在五個區域:東、西、北、南和中。 |
| 2 | CardLayout
CardLayout 物件將容器中的每個元件視為一張卡片。一次只能看到一張卡片。 |
| 3 | FlowLayout
FlowLayout 是預設佈局。它以方向流的方式佈局元件。 |
| 4 | GridLayout
GridLayout 以矩形網格的形式管理元件。 |
| 5 | GridBagLayout
這是最靈活的佈局管理器類。GridBagLayout 的物件可以垂直、水平或沿基線對齊元件,而無需元件大小相同。 |
| 6 | GroupLayout
GroupLayout 以層次結構對元件進行分組,以便將其定位在容器中。 |
| 7 | SpringLayout
SpringLayout 根據一組約束條件來定位其關聯容器的子元素。 |