当前位置 类层次 (JDK) 所有类 (JDK) 所有域和方法 (JDK)

类 java.awt.GridLayout

java.lang.Object
   |
   +----java.awt.GridLayout

public class GridLayout
extends Object
implements LayoutManager, Serializable

GridLayout 类是一个布局管理器,它以矩形网格形式对容器中的组件进行布局。

容器被分成尺寸相等的矩形,一个组件放置在一个矩形中。

例如:以下程序是一个对 6 个按钮进行布局的 applet ,按钮被布局为 3 行 2 列:


 import java.awt.*;
 import java.applet.Applet;
 public class ButtonGrid extends Applet {
     public void init() {
         setLayout(new GridLayout(3,2));
         add(new Button("1"));
         add(new Button("2"));
         add(new Button("3"));
         add(new Button("4"));
         add(new Button("5"));
         add(new Button("6"));
     }
 }
 

产生下列输出:


构造子索引

GridLayout()
以缺省的一个组件一列的方式,创建一个单行网格布局。
GridLayout(int, int)
用指定的行数和列数创建一个网格布局。
GridLayout(int, int, int, int)
用指定的行数和列数创建一个网格布局。

方法索引

addLayoutComponent(String, Component)
将名字指定的指定组件添加到布局中。
getColumns()
获取该布局的列数。
getHgap()
获取两个组件之间的水平间距。
getRows()
获取该布局的行数。
getVgap()
获取两个组件之间的垂直间距。
layoutContainer(Container)
使用该布局对指定的容器进行布局。
minimumLayoutSize(Container)
确定使用该网格布局的容器参数的最小尺寸。
preferredLayoutSize(Container)
确定使用该网格布局的容器参数的最佳尺寸。
removeLayoutComponent(Component)
从布局中删除指定组件。
setColumns(int)
设置该布局的列数为指定值。
setHgap(int)
设置组件中的水平间距为指定值。
setRows(int)
设置该布局的行数为指定值。
setVgap(int)
设置组件间的垂直间距为指定值。
toString()
返回这个网格布局的值的字符串表示。

构造子

GridLayout
 public GridLayout()
以缺省的一个组件一列的方式,创建一个单行网格布局。

GridLayout
 public GridLayout(int rows,
                   int cols)
用指定的行数和列数创建一个网格布局。布局中的所有组件的尺寸都相等。

参数 rowscols 可以有一个为 0 ,但不能两个同时为 0 ,它表示一行或一列中可放置任意数目的对象。

参数:
rows - 行数,0 表示每列可有任意行。
cols - 列数,0 表示每行可有任意列。
GridLayout
 public GridLayout(int rows,
                   int cols,
                   int hgap,
                   int vgap)
用指定的行数和列数创建一个网格布局。布局中的所有组件的尺寸都相等。

而且,水平和垂直间距被设置成指定值。水平间距放置在左、右边沿上,位于每两列之间。垂直间距放置在上、下边沿上,位于每两行之间。

参数 rowscols 可以有一个为 0 ,但不能两个同时为 0 ,它表示一行或一列中可放置任意数目的对象。

参数:
rows - 行数,0 表示每列可有任意行。
cols - 列数,0 表示每行可有任意列。
hgap - 水平间距。
vgap - 垂直间距。
抛出: IllegalArgumentException
若参数 rowscols 无效。

方法

getRows
 public int getRows()
获取该布局的行数。

返回值:
该布局的行数。
setRows
 public void setRows(int rows)
设置该布局的行数为指定值。

参数:
rows - 该布局的行数。
抛出: IllegalArgumentException
若参数 rowscols 值都设为 0 。
getColumns
 public int getColumns()
获取该布局的列数。

返回值:
该布局的列数。
setColumns
 public void setColumns(int cols)
设置该布局的列数为指定值。

参数:
cols - 该布局的列数。
抛出: IllegalArgumentException
若参数 rowscols 值都设为 0 。
getHgap
 public int getHgap()
获取两个组件之间的水平间距。

返回值:
两个组件之间的水平间距。
setHgap
 public void setHgap(int hgap)
设置组件中的水平间距为指定值。

参数:
hgap - 两个组件之间的水平间距。
getVgap
 public int getVgap()
获取两个组件之间的垂直间距。

返回值:
两个组件之间的垂直间距。
setVgap
 public void setVgap(int vgap)
设置组件间的垂直间距为指定值。

参数:
vgap - 两个组件之间的垂直间距。
addLayoutComponent
 public void addLayoutComponent(String name,
                                Component comp)
将名字指定的指定组件添加到布局中。

参数:
name - 组件的名字。
comp - 要添加的组件。
removeLayoutComponent
 public void removeLayoutComponent(Component comp)
从布局中删除指定组件。

参数:
comp - 要删除的组件。
preferredLayoutSize
 public Dimension preferredLayoutSize(Container parent)
确定使用该网格布局的容器参数的最佳尺寸。

网格布局的最佳宽度为:容器的列数乘上容器中所有组件的最佳宽度中的最大值,加上 ( 列数 + 1 )个水平间距,再加上目标容器的左右边框。

网格布局的最佳高度为:容器中的行数乘上容器中所有组件的最佳高度的最大值,加上 ( 列数 + 1 ) 个垂直间距,再加上目标容器的上下边框。

参数:
target - 要进行布局的容器。
返回值:
返回指定容器使用该布局对其子组件布局的最佳尺寸。
参见:
minimumLayoutSize, getPreferredSize
minimumLayoutSize
 public Dimension minimumLayoutSize(Container parent)
确定使用该网格布局的容器参数的最小尺寸。

网格布局的最小宽度为:容器的列数乘上容器中所有组件的最小宽度中的最大值,加上 ( 列数 + 1 )个水平间距,再加上目标容器的左右边框。

网格布局的最小高度为:容器的行数乘上容器中所有组件的最小高度中的最大值,加上 ( 行数 + 1 )个垂直间距,再加上目标容器的上下边框。

参数:
target - 要进行布局的容器。
返回值:
返回指定容器使用该布局对其子组件进行布局时所需的最小尺寸。
参见:
preferredLayoutSize, doLayout
layoutContainer
 public void layoutContainer(Container parent)
使用该布局对指定的容器进行布局。

该方法重新调整指定容器中组件的形状,来满足这个 GridLayout 对象的约束条件。

网格布局管理器通过将容器的自由空间根据布局中的行数和列数分割成大小相等部分来确定单个组件的尺寸。容器的自由空间等于:容器的尺寸减去所有边框和所有指定的水平和垂直间距。网格布局中的所有组件的尺寸都相等。

参数:
target - 要进行布局的容器。
参见:
Container, doLayout
toString
 public String toString()
返回这个网格布局的值的字符串表示。

返回值:
表示该网格布局的字符串表示。
覆盖:
Object 中的 toString

当前位置 类层次 (JDK) 所有类 (JDK) 所有域和方法 (JDK)