java的swing布局(二)流布局


java的swing布局(二)流布局

date: 2019-11-03 20:53:53

流(Flowlayout)布局管理器是最基本的布局管理器,像“流”一样,从左到右知道占满这一行,然后再移动向下一行,常用的用法如下:

  1. public Flowlayout()
  2. public Flowlayout(int align)
  3. public Flowlayout(int align,int horizGap,int vertGap)

其中align表示每一行的对齐方式 :align=0,表示左对齐,align=1,表示中间对齐,align=2,表示右对齐; horizGap,vertGap分别表示组件之间的水平间隔和垂直间隔。看下面例子:

import java.awt.*;

import javax.swing.*;

public class Jig extends JFrame{
	public void create(String title) {
		JFrame jf=new JFrame();
		Container  c=jf.getContentPane();
		JPanel p1=new JPanel();
		for(int i=0;i<10;i++) {
			p1.add(new JButton("部件"+(i+1)));
			
		}   
		c.add(p1);
		jf.setTitle(title);
		p1.setLayout(new FlowLayout(0,30, 10));      //①  设置为左对齐,部件之间的水平距离30,垂直距离都为10    
		jf.setBounds(200, 200, 400, 200);
		jf.setVisible(true);
		jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
	}
	
	public static void main(String[] args) {
			new Jig().create("流布局");
	}
}

运行结果如下:
java的swing布局(二)流布局_第1张图片
当你随意调整页面大小时会发现,总是优先从左边开始填充
如果采用默认的方式 也就是说 ① 行改为 p1.setLayout(new FlowLayout()); ,则默认以中间对齐,横向拉伸后效果如下:
java的swing布局(二)流布局_第2张图片

你可能感兴趣的:(java的swing编程)