网格布局(GridLayout) 行数与列数

1、如果网格布局对象未指定具体的“行数”和“列数”,那么它将拥有1行和动态的列数。

 1 import java.awt.Button;
 2 import java.awt.Frame;
 3 import java.awt.GridLayout;
 4 
 5 public class TestGridLayout {
 6 
 7      public static void main(String[] args) {
 8 
 9           Frame f = new Frame("TestGridLayout" );
10           GridLayout gl = new GridLayout();  //创建无参的网格布局对象
11 
12           Button bt1 = new Button("bt1" );
13           Button bt2 = new Button("bt2" );
14           Button bt3 = new Button("bt3" );
15           Button bt4 = new Button("bt4" );
16           //Button bt5 = new Button("bt5" );
17 
18            // 添加组件到容器
19           f.add(bt1);
20           f.add(bt2);
21           f.add(bt3);
22           f.add(bt4);
23           //f.add(bt5);
24 
25           f.setLayout(gl); // 设置网格布局
26           f.setSize(400, 300); // 设置窗口大小
27           f.setVisible( true); // 设置窗口为可见
28 
29      }
30 }
View Code

4个组件的效果:

网格布局(GridLayout) 行数与列数_第1张图片

5个组件的效果:

网格布局(GridLayout) 行数与列数_第2张图片

2、指定行数和列数的网格布局:new GirdeLayout(int rows,int cols);

2_1、如果指定 “行数”为非0,那么“列数”的自定义将被忽略;列数由“组件数”和“行数”决定。

 

比如:有5个组件,在rows=2,cols=1的网格布局中,将显示为2行3列;

网格布局(GridLayout) 行数与列数_第3张图片

在rows=5,cols=2的网格布局中,将显示5行1列;

网格布局(GridLayout) 行数与列数_第4张图片

2_2、仅在定义行数为0时,列数的定义才会生效。那么,此时行数并不是真的为0行,而是通过“列数”和“组件数”所决定。

比如:有5个组件,在在rows=0,cols=1的网格布局中,将显示为5行1列。

网格布局(GridLayout) 行数与列数_第5张图片

 
如果在阅读过程中发现了一些错误的地方,请不要吝啬您的评论。希望能和大家共同进步!谢谢!

你可能感兴趣的:(网格布局(GridLayout) 行数与列数)