FlowLayout
類用於從左到右流動排列組件。
類聲明
以下是java.awt.FlowLayout
類的聲明 -
public class FlowLayout
extends Object
implements LayoutManager, Serializable
字段
以下是java.awt.BorderLayout
類的字段 -
static int CENTER
- 此值指示每行組件應居中。static int LEADING
- 此值指示應將每行組件對齊到容器方向的前沿。例如,從左到右的方向向左。static int LEFT
- 此值指示每行組件應左對齊。static int RIGHT
- 此值指示每行組件應右對齊。static int TRAILING
- 此值指示應將每行組件對齊到容器方向的後沿。例如,從左到右的方向向右。
類構造函數
編號 | 構造函數 | 描述 |
---|---|---|
1 | FlowLayout() |
構造一個具有居中對齊和默認5單位水準和垂直間隙的新FlowLayout 。 |
2 | FlowLayout(int align) |
使用指定的對齊方式構造一個新的FlowLayout ,並使用默認為5 單位水準和垂直間隙。 |
3 | FlowLayout(int align, int hgap, int vgap) |
創建一個新的流佈局管理器,其中包含指示的對齊方式以及指示的水準和垂直間隙。 |
類方法
編號 | 類方法 | 描述 |
---|---|---|
1 | void addLayoutComponent(String name, Component comp) |
將指定的組件添加到佈局中。 |
2 | int getAlignment() |
獲取此佈局的對齊方式。 |
3 | int getHgap() |
獲取組件之間的水準間隙。 |
4 | int getVgap() |
獲取組件之間的垂直間隙。 |
5 | void layoutContainer(Container target) |
佈局容器。 |
6 | Dimension minimumLayoutSize(Container target) |
返回佈局指定目標容器中包含的可見組件所需的最小值。 |
7 | Dimension preferredLayoutSize(Container target) |
給定指定目標容器中的可見組件,返回此佈局的首選尺寸。 |
8 | void removeLayoutComponent(Component comp) |
從佈局中刪除指定的組件。 |
9 | void setAlignment(int align) |
設置此佈局的對齊方式。 |
10 | void setHgap(int hgap) |
設置組件之間的水準間隙。 |
11 | void setVgap(int vgap) |
設置組件之間的垂直間隙。 |
12 | String toString() |
返回此FlowLayout 對象及其值的字串表示形式。 |
方法繼承
該類繼承以下類中的方法 -
java.lang.Object
FlowLayout示例
使用編輯器創建以下Java程式:FlowLayoutDemo.java
package com.zaixian.layout;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class FlowLayoutDemo {
private JFrame mainFrame;
private JLabel headerLabel;
private JLabel statusLabel;
private JPanel controlPanel;
public FlowLayoutDemo() {
prepareGUI();
}
public static void main(String[] args) {
FlowLayoutDemo swingLayoutDemo = new FlowLayoutDemo();
swingLayoutDemo.showFlowLayoutDemo();
}
private void prepareGUI(){
mainFrame = new JFrame("Java SWING FlowLayout示例(xuhuhu.com)");
mainFrame.setSize(400,400);
mainFrame.setLayout(new GridLayout(3, 1));
headerLabel = new JLabel("",JLabel.CENTER );
statusLabel = new JLabel("",JLabel.CENTER);
statusLabel.setSize(350,100);
mainFrame.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent windowEvent){
System.exit(0);
}
});
controlPanel = new JPanel();
controlPanel.setLayout(new FlowLayout());
mainFrame.add(headerLabel);
mainFrame.add(controlPanel);
mainFrame.add(statusLabel);
mainFrame.setVisible(true);
}
private void showFlowLayoutDemo() {
headerLabel.setText("Layout in action: FlowLayout");
JPanel panel = new JPanel();
panel.setBackground(Color.blue);
panel.setSize(200, 200);
FlowLayout layout = new FlowLayout();
layout.setHgap(10);
layout.setVgap(10);
panel.setLayout(layout);
panel.add(new JButton("確定"));
panel.add(new JButton("取消"));
controlPanel.add(panel);
mainFrame.setVisible(true);
}
}
執行上面示例代碼,得到以下結果:
上一篇:
Swing LayoutManager介面
下一篇:
Swing Menu類