Swing布局管理器--流式布局管理器

流式布局管理器

  • FlowLayout流式布局管理器,是JPanel和JApplet的默认布局管理
  • FlowLayout会将组件从上到下,从左到右的放置规律逐渐进行定位,直到占据这一行所在的空间,才会向下移动一行
  • 与其它布局管理器不同的是,FlowLayout不限制它所管理的组件的大小,而是允许他们有自己的最佳大小
  • 组件在每一行都是居中排列的,可以通过设置更改组件在每一行的排列位置

FlowLayout构造方法

  • FlowLayout():创建一个布局管理器,使用默认的居中对齐方式和默认 5 像素的水平和垂直间隔
  • FlowLayout(int align):创建一个布局管理器,使用默认 5 像素的水平和垂直间隔。其中,align 表示组件的对齐方式,对齐的值必须是FlowLayout.LEFT、FlowLayout.RIGHT 和 FlowLayout.CENTER,指定组件在这一行的位置是居左对齐、居右对齐或居中对齐
  • FlowLayout(int align, int hgap,int vgap):创建一个布局管理器,其中 align 表示组件的对齐方式;hgap 表示组件之间的横向间隔;vgap 表示组件之间的纵向间隔,单位是像素
  • FlowLayout.LEFT=0
  • FlowLayout.CENTER=1
  • FlowLayout.RIGHT=2

Demo01

import javax.swing.*;
import java.awt.*;

public class DemoFlowLayout {
    public static void main(String[] args) {
        JFrame jf = new JFrame("流式窗体");
        Container container = jf.getContentPane();
        //设置流式布局管理器为居中布局
        container.setLayout(new FlowLayout(1));
//        container.setLayout(new FlowLayout(FlowLayout.CENTER));
        //向容器中添加10个按钮组件
        for (int i = 0; i < 10; i++) {
            container.add(new JButton("button"+(i+1)));
        }
        jf.setSize(300,200);
        jf.setVisible(true);
        jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
    }
}

Demo01运行结果如下
Swing布局管理器--流式布局管理器_第1张图片
Demo02

import javax.swing.*;
import java.awt.*;

public class DemoFlowLayout02 {
    public static void main(String[] args) {
        JFrame jf = new JFrame("流式窗体");
        Container container = jf.getContentPane();
        for (int i = 0; i < 10; i++) {
            //向容器中添加按钮组件
            container.add(new JButton("button"+(i+1)));
        }
        //设置容器背景色为灰色
        container.setBackground(Color.gray);
        //设置流式布局组件的水平和垂直方向上的间隔为10像素,向左对齐
        jf.setLayout(new FlowLayout(0,10,10));
        jf.setVisible(true);
        jf.setSize(300,200);
        jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
    }
}

Demo02运行结果如下
Swing布局管理器--流式布局管理器_第2张图片

你可能感兴趣的:(Java自学路线+笔记,#,Swing)