GridBagConstraints参数详解
GridBagConstraints参数详解
gridBagConstraints 参数
gridx = 2; // X=2
gridy = 0; // Y=0
gridwidth = 1; // 横占一个单元格
gridheight = 1; // 列占一个单元格
weightx = 0.0; // 当窗口放大时,长度不变
weighty = 0.0; // 当窗口放大时,高度不变
anchor = GridBagConstraints.NORTH; // 当组件没有空间大时,使组件处在北部
fill = GridBagConstraints.BOTH; // 当格子有剩余空间时,填充空间
insert = new Insets(0, 0, 0, 0); // 组件彼此的间距
ipadx = 0; // 组件内部填充空间,即给组件的最小宽度添加多大的空间
ipady = 0; // 组件内部填充空间,即给组件的最小高度添加多大的空间new GridBagConstraints(gridx, gridy, gridwidth, gridheight, weightx, weighty, anchor, fill, insert, ipadx, ipady);
gridBagConstraints.insets = new java.awt.Insets(4, 4, 0, 4);//设置组件的位置
gridx,gridy
设置组件所处行与列的起始坐标。例如gridx=0,gridy=0表示将组件放置在0行0列单元格内。
gridwidth和gridheight
设置组件横向与纵向的单元格跨越个数。
它们一个负责组件的水平宽度(gridwidth),一个负责组件的垂直高度(gridheight )。由此我们可以知道,组件的大小是可以变化的。组件的形状是不能改变的,永远是矩形的。
gbc.gridwidth= GridBagConstraints.REMAINDER;
这是Java精心为大家设计的一个特别有用的变量,使用它就可以通知外观管理器让组件占据本行的所有剩余空间,而不必去计算宽度值是多少,很自动化。
可以通过GridBagConstraints的RELETIVE,和REMAINDER来进行指定,它的用法是:
当把gridx值设置为GridBagConstriants.RELETIVE时,所添加的组件将被放置在前一个组件的右侧。同理,对gridy 值设置为GridBagConstraints.RELETIVE时,所添加的组件将被放置在前一个组件的下方,(这是一种根据前一个组件而决定当前组 件的相对放置方式)
对gridweight和gridheight也可以应用GridBagConstraints的REMAINDER方式,创建的组件会从创建的起点位置 开始一直延伸到容器所能允许的界限为止。该功能使得你可以创建跨越某些行或列的组件,从而改变相应方向上组件的数目,即使其后在布局的其他地方添加额外的组件也是如此。
weightx,weighty
设置窗口变大时的缩放比例。
anchor
设置组件在单元格中的对齐方式。由以下常量来定义
GridBagConstraints.CENTER
GridBagConstraints.EAST
GridBagConstraints.WEST
GridBagConstraints.SOUTH
GridBagConstraints.NORTH
GridBagConstraints.SOUTHEAST
GrisBagConstraints.SOUTHWEST
GridBagConstraints.NORTHEAST
GridBagConstraints.NORTHWEST
fill
当某个组件未能填满单元格时,可由此属性设置横向、纵向或双向填满。由以下常量来定义
GridBagConstraints.NONE
GridBagConstraints.HORIZONTAL
GridBagConstraints.VERTICAL
GridBagConstraints.BOTH
ipadx,ipady
将单元格内的组件的最小尺寸横向或纵向扩大。若一个组件的尺寸为30*10像素,ipadx=2,ipady=3,则单元格内的组件最小尺寸为34*16像素
insets
Insets是AWT里面一个类的名字,它的用途是用来定义组件容器周围的空间大小,其中带有四个参数:
Insets(第一个参数,第二个参数,第三个参数,第四个参数 )
Insets(上,左,下,右)
insets用来设置一个组件和其他的组件之间的距离的。
fill
每个组件有一定的原始大小,例如在类FlowLayout外观管理器的管理之下显示的就都是组件的本身原始大小。如果我们分配给一个组件的空间比它原本所需要的空间大时,就需要一定的方式方法来决定如何处理这一部分多余的空间。这时就用到了fill值。Java根据人们给这个fill设定的值来决定如何处理比组件原始空间大的那部分空间。
fill可以取四种不同的值,它们分别代表了四种不同的剩余空间处理方式:
GridBagConstraints.NONE //不必理睬剩余空间的存在,让它空着好了。
GridBagConstraints.BOTH //不让一点剩余空间存在,改变组件的大小,让它填
满分配给它的整个空间。
GridBagConstraints.HORIZONTAL //调整组件的大小,把水平方向的空间填满。
GridBagConstraints.VERTICAL //调整组件的大小,把垂直方向的空间填满,让水平方向的空间空着吧。
例
构造函数
GridBagConstraints(gridx, gridy, gridwidth, gridheight, weightx, weighty, anchor, fill, insert, ipadx, ipady)
没改的表示不赋值
东:GridBagConstraints(gridx, gridy,1, 1, weightx, weighty, anchor, GridBagConstraints.BOTH, insert, ipadx, ipady);
西:GridBagConstraints(gridx, gridy,GridBagConstraints.REMAINDER, 1, weightx, weighty, anchor, GridBagConstraints.BOTH, insert, ipadx, ipady);
南:GridBagConstraints(gridx, gridy,1, 4, weightx, weighty, anchor, GridBagConstraints.BOTH, insert, ipadx, ipady);
北:GridBagConstraints(gridx, gridy,2, 2, weightx, weighty, anchor, GridBagConstraints.BOTH, insert, ipadx, ipady);
中:GridBagConstraints(gridx, gridy,GridBagConstraints.REMAINDER, 2, weightx, weighty, anchor, GridBagConstraints.BOTH, insert, ipadx, ipady);
六:GridBagConstraints(gridx, gridy,GridBagConstraints.REMAINDER, 2, weightx, weighty, anchor, GridBagConstraints.BOTH, new Insets(5,6,7,8), ipadx, ipady);
GridBagConstraints参数详解相关推荐
- CI流水线配置文件参数详解(一)
文章目录 4. 参数详解(一) 4.1 ``script`` 4.2 ``image`` 指定使用Docker镜像.如 ``iamge:name`` ,暂时忽略. 4.3 ``before_scrip ...
- 内存性能参数详解(转载)
内存性能参数详解 先说说最有效提高你机器内存性能的几个参数:CL,TRP,TRCD CAS Latency "列地址选通脉冲潜伏期" BIOS中可能的其他描述为:tCL.CAS L ...
- spring boot 实战 / 可执行war启动参数详解
概述 上一篇文章<spring boot 实战 / mvn spring-boot:run 参数详解>主要讲解了spring boot 项目基于maven插件启动过程中借助profil ...
- 调包侠福音!机器学习经典算法开源教程(附参数详解及代码实现)
Datawhale 作者:赵楠.杨开漠.谢文昕.张雨 寄语:本文针对5大机器学习经典算法,梳理了其模型.策略和求解等方面的内容,同时给出了其对应sklearn的参数详解和代码实现,帮助学习者入门和巩固 ...
- plot参数详解python_30行Python代码实现3D数据可视化
作者:潮汐 来源:Python技术 欢迎来到编程教室~ 我们之前的文章中有讲解过不少 Matplotlib 的用法,比如: 完成这50个Matplotlib代码,你也能画出优秀的图表 25个常用Mat ...
- Ehcache配置参数详解
ehcache配置参数详解 <?xml version="1.0" encoding="UTF-8"?><ehcache><dis ...
- PHP date函数参数详解
PHP date函数参数详解 作者: 字体:[增加 减小] 类型:转载 time()在PHP中是得到一个数字,这个数字表示从1970-01-01到现在共走了多少秒,很奇怪吧 不过这样方便计算, 要找 ...
- ping ip 端口_学生会私房菜【20200305期】——Ping命令及其常用参数详解
一命令原理 Ping是ICMP的一个典型应用.Ping是检测网络连通的常用工具,同时也能收集其他相关信息.用户可以在Ping命令中指定不同参数,如ICMP报文长度.发送的ICMP报文个数.等待回复响应 ...
- python箱线图_Python 箱线图 plt.boxplot() 参数详解
Python 绘制箱线图主要用 matplotlib 库里 pyplot 模块里的 boxplot() 函数. plt.boxplot() 参数详解 plt.boxplot(x, # 指定要绘制箱线图 ...
最新文章
- codeforces#597 D. Shichikuji and Power Grid(虚点+最小生成树+记录)
- 特斯拉:已在中国建立数据中心,以实现数据存储本地化
- 2021年北京高校数学建模校际联赛题目 出版社图书印制策略
- android studio 初次使用Kotlin(环境准备篇)
- 【转】Unix环境高级程序设计入门----文件系统的相关编程(上)
- 什么是COM组件(ZT)
- ssm radis mysql_SSM完美整合Redis
- JVM 虚拟机类加载过程和双亲委派机制
- 电子过载继电器行业调研报告 - 市场现状分析与发展前景预测(2021-2027年)
- iis绑定php程序应用池设定,什么是IIS应用程序池以及应用程序池详解
- SharePoint 网站搬迁
- keepalived+nginx双机热备+负载均衡
- 三节串联锂电池充电管理芯片,IC电路图,BOM表
- 常见的几种web api 接口加密签名模式
- wxpython wx.Destroy()和wx.Close()区别
- Android使用Bugly实现静默安装/自动安装app
- stm32f7网口_【STM32F7】STM32F7开发篇-超详细操作步骤
- 引用base64包maven打包异常情况
- 潘晓婷:19年的专注成就九球天后
- VR+电击,禁毒新方式