Java虽然可以以像素为单位对组件进行精确的定位,但是其在不同的系统中将会有一定的显示差异,使得显示效果不尽相同,为此java提供了布局管理器,以使编写的图形界面具有良好的平台无关性。
注意:所有的布局管理器均是针对容器来使用的,包括顶层容器和中间容器。前面已经简单介绍过几种布局管理器,这篇将展示FlowLayOut布局是使用方法
FlowLayout(流式布局)
使用FlowLayout布局方式的容器中组件按照加入的先后顺序按照设置的对齐方式(居中、左对齐、右对齐)从左向右排列,一行排满(即组件超过容器宽度后)到下一行开始继续排列。
FlowLayout类的常用构造函数
构造函数
FlowLayout()------构造一个新的 FlowLayout,它是默认居中对齐的,默认的水平和垂直间隙是5个像素
FlowLayout(int align)------五个参数值及含义如下:
0或FlowLayout.lEFT ,控件左对齐
1或FlowLayout.CENTER ,居中对齐
2或FlowLayout.RIGHT ,右对齐
3或FlowLayout.LEADING,控件与容器方向开始边对应
4或FlowLayout.TRAILING,控件与容器方向结束边对应
如果是0、1、2、3、4之外的整数,则为左对齐
FlowLayout(int align, int hgap, int vgap) --------创建一个新的流布局管理器,它具有指定的对齐方式以及指定的水平和垂直间隙
方法
Void setAlignment(int align)-----设置此布局的对齐方式。
void setHgap(int hgap)----------设置组件之间以及组件与Container
的边之间的水平间隙。
void setVgap(int vgap) ---------设置组件之间以及组件与 Container 的边之间的垂直间隙。
FlowLayout实例
<span style="color:#330033;">import java.awt.Button; import java.awt.FlowLayout; import javax.swing.JFrame; public class FlowLayOutDemo { public static void main(String[] args){ JFrame fr=new JFrame("流式布局示例"); fr.setLayout(new FlowLayout(FlowLayout.CENTER,20,5));//流式布局,居中对齐 for (int i = 0; i < 10; ++i) { fr.add(new Button("按钮"+i)); } //设置窗口为最佳大小 fr.pack(); fr.setVisible(true); } }</span>
效果图
拉动窗口后