博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
博为峰Java技术文章 ——JavaSE Swing GridBagLayout布局管理器I
阅读量:6031 次
发布时间:2019-06-20

本文共 1148 字,大约阅读时间需要 3 分钟。

hot3.png

GridBagLayout是一种很先进的、很人性化的布局管理器,通过网格的划分,可以看到每个组件都占据一个网格,也可以一个组件占据几个网格。与GridLayout布局管理器不同的是,是按照开发人员自己的思路来排列控件位置,而GridLayout布局管理器根据系统的安排来布局。如果要采用网格组,一般来说可以采用下列步骤:

1.创建一个GridBagLayout对象。

2.将容器设成此时象的布局管理器。

3.创建约束(GridBagConstraints)对象。

4.创建各个相应的组件。

5.添加各个组件与约束到网格组布局管理器中。

网格组由多个网格组成,而且各个行或者列的长度和宽度不同。但默认情况下,单元格从左上角开始有序列的编号,从第0行、第0列开始计数。

当向网格组布局管理器中添加组件时,需要分别定义每个单元格的序列号,只要设定相应的值,那么组件就会添加到网格组布局管理器中。涉及到组件被添加到什么位置有4个参数,即gridX, gridY, gridwidth, gridheight。其中,gridX, gridY分别定义了添加组件时左上角的行与列的位置,而gridwidth, gridheight分别定义了组件所占用的列数和行数。

网格组布局管理器中每个区城都要设里增量字段(weighttx与weighty分别代表x方向和y方向的增量).如果想让某个区域保持初始化的大小,也就是说窗口缩放不会那就应该设置该区域的增量为0,相反如果让组件能随时完全填充单元格,那设置为100。这个布局管理器对象中还涉及到了两个参数,即fill和anchor。

这两个参数都是非常重要的约束,其中当组件不能填满单元格时,fill参数就可以发挥作用。该约束的值主要有以下几种。

l GridBagConstraints.NONE:在每一个方向都不填充,即保持原状。

l GridBagConstraints.HORIZONTAL:只在水平方向上填充。

l GridBagConstraints.VERTICAL:只在垂直方向上填充。

l GridBagConstraints.BOTH:在两个方向上都填充。

而anchor参数则是当一个组件大于分配给它的单元格时发挥作用,该约束就是约定如何处理该组件,它的值如下所示。

l GridBagConstraints.CENTER:居中缩小。

l GridBagConstraints.NORTH:顶部编小。

l GridBagConstraints.NORTHEAST:左上角缩小。

l GridBagConstrai nts.EAST:右侧编小。

 

 

转载于:https://my.oschina.net/u/2971691/blog/826746

你可能感兴趣的文章
四 指针与数组 五 函数
查看>>
硬盘空间满了
查看>>
dutacm.club Water Problem(矩阵快速幂)
查看>>
深入JVM内核--GC算法和种类
查看>>
iOS的AssetsLibrary框架访问所有相片
查看>>
MySQLdb的安装
查看>>
读书笔记三
查看>>
数论 - 最小乘法逆元
查看>>
企业架构研究总结(22)——TOGAF架构开发方法(ADM)之信息系统架构阶段
查看>>
接口测试(三)--HTTP协议简介
查看>>
周志华《机器学习》课后答案——第4章.决策树
查看>>
frameset分帧问题
查看>>
特殊样式:ime-mode禁汉字,tabindex焦点
查看>>
linux
查看>>
Layout父元素点击不到的解决办法
查看>>
【面试次体验】堆糖前端开发实习生
查看>>
基于apache实现负载均衡调度请求至后端tomcat服务器集群的实现
查看>>
C#+QQEmail自动发送邮件
查看>>
[Hadoop]MapReduce多输出
查看>>
Android Activity详解(一)
查看>>