文章目录

 一、FlowLayout布局

  该布局是Panel型容器的默认布局,FlowLayout类的常用方法有:

  • FlowLayout():构造方法,从左到右顺序添加组件,一行排满后转到下一行继续从左到右排列。每行的组件都居中排列。组件之间的水平和垂直间隙都是5个像素。
  • FlowLayout(int align,int hgap,int vgap):构造方法,align为对齐方式:

    FlowLayout.LEFT,FlowLayout.Right,FlowLayout.CENTER

  • public void setAlignment(int align):设置布局的对齐方式。

  • public void setHgap(int hgap):设置布局的水平间隙。
  • public void setVgap(int vgap):设置布局的垂直间隙。

      二、BorderLayout布局

  • 容器的空间被分为东、西、南、北、中五个区域,中间的区域最大。可指定将组件加入到某个区域,区域由静态常量CENTER、NORTH、SOUTH、EAST、WEST表示。

  • 添加方法:con.add(b,BorderLayout.CENTER); //将组件b添加到容器con的中间区域。
  • 添加到某个区域的组件将占据整个区域。
  • 每个区域只能放置一个组件。

  三、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

文章目录