一、FlowLayout布局
该布局是Panel型容器的默认布局,FlowLayout类的常用方法有:
FlowLayout.LEFT,FlowLayout.Right,FlowLayout.CENTER
二、BorderLayout布局
三、CardLayout布局
容器可容纳多个组件,但同一时刻只能显示一个组件。
CardLayout card=new CardLayout();
con.setLayout(card);
add(String s,Component b);//组件b的显示代号为s
card.show(con,s);
card.first(con);//显示con中的第一个组件
card.last(con);//显示con中的最后一个组件
card.next(con);//显示当前组件的下一个组件
card.previous(con);//显示当前组件的前一个组件
四、GridLayout布局
该布局比较灵活,使用较多。其布局策略是将容器划分成若干行乘以若干列的网格区域。
GridLayout(int m,int n);//指定划分网络的行数m和列数n
使用add方法将组件加入容器(从左到右),一行排满之后再排第二行。
五、BoxLayout布局
盒式容器的默认布局就是盒式布局。不允许更改盒式容器的布局。
BoxLayout(Container con,int axis); //构造函数,参数axis指定按行或列布局。axis的取值为:
BoxLayout.X_AXIS, BoxLayout.Y_AXIS
与FlowLayout不同的是,行型盒式布局的容器组件只排列一行,组件多时自动缩小。
Box boxh=Box.createHorizontalBox();//创建一个行式盒式容器
Box boxh=Box.createVerticalBox();//创建一个列式盒式容器
con.add(Box.createHorizontalStrut(int n));//添加水平支撑
con.add(Box.createVerticalStrut(int n)); //添加垂直支撑
con.add(Box.createHorizontalGlue(); //添加水平胶水组件
con.add(Box.createVerticalGlue(); //添加垂直胶水组件
六、null布局
向空布局的容器中添加一个组件c需要两个步骤:
使用add(c)方法向容器添加组件.
调用setBounds(int left,int top,int width,int height)方法放置该组件在该容器中的位置和本身的大小。
转自:http://blog.sina.com.cn/s/blog_63cefe150100gtx3.html