网格布局(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个组件的效果:

5个组件的效果:

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

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

 

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

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

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

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

 
如果在阅读过程中发现了一些错误的地方,请不要吝啬您的评论。希望能和大家共同进步!谢谢!
posted @   逆行  阅读(6723)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
点击右上角即可分享
微信分享提示
主题色彩