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参数详解相关推荐

  1. CI流水线配置文件参数详解(一)

    文章目录 4. 参数详解(一) 4.1 ``script`` 4.2 ``image`` 指定使用Docker镜像.如 ``iamge:name`` ,暂时忽略. 4.3 ``before_scrip ...

  2. 内存性能参数详解(转载)

    内存性能参数详解 先说说最有效提高你机器内存性能的几个参数:CL,TRP,TRCD CAS Latency "列地址选通脉冲潜伏期" BIOS中可能的其他描述为:tCL.CAS L ...

  3. spring boot 实战 / 可执行war启动参数详解

    概述   上一篇文章<spring boot 实战 / mvn spring-boot:run 参数详解>主要讲解了spring boot 项目基于maven插件启动过程中借助profil ...

  4. 调包侠福音!机器学习经典算法开源教程(附参数详解及代码实现)

    Datawhale 作者:赵楠.杨开漠.谢文昕.张雨 寄语:本文针对5大机器学习经典算法,梳理了其模型.策略和求解等方面的内容,同时给出了其对应sklearn的参数详解和代码实现,帮助学习者入门和巩固 ...

  5. plot参数详解python_30行Python代码实现3D数据可视化

    作者:潮汐 来源:Python技术 欢迎来到编程教室~ 我们之前的文章中有讲解过不少 Matplotlib 的用法,比如: 完成这50个Matplotlib代码,你也能画出优秀的图表 25个常用Mat ...

  6. Ehcache配置参数详解

    ehcache配置参数详解 <?xml version="1.0" encoding="UTF-8"?><ehcache><dis ...

  7. PHP date函数参数详解

    PHP date函数参数详解 作者: 字体:[增加 减小] 类型:转载 time()在PHP中是得到一个数字,这个数字表示从1970-01-01到现在共走了多少秒,很奇怪吧  不过这样方便计算, 要找 ...

  8. ping ip 端口_学生会私房菜【20200305期】——Ping命令及其常用参数详解

    一命令原理 Ping是ICMP的一个典型应用.Ping是检测网络连通的常用工具,同时也能收集其他相关信息.用户可以在Ping命令中指定不同参数,如ICMP报文长度.发送的ICMP报文个数.等待回复响应 ...

  9. python箱线图_Python 箱线图 plt.boxplot() 参数详解

    Python 绘制箱线图主要用 matplotlib 库里 pyplot 模块里的 boxplot() 函数. plt.boxplot() 参数详解 plt.boxplot(x, # 指定要绘制箱线图 ...

最新文章

  1. codeforces#597 D. Shichikuji and Power Grid(虚点+最小生成树+记录)
  2. 特斯拉:已在中国建立数据中心,以实现数据存储本地化
  3. 2021年北京高校数学建模校际联赛题目 出版社图书印制策略
  4. android studio 初次使用Kotlin(环境准备篇)
  5. 【转】Unix环境高级程序设计入门----文件系统的相关编程(上)
  6. 什么是COM组件(ZT)
  7. ssm radis mysql_SSM完美整合Redis
  8. JVM 虚拟机类加载过程和双亲委派机制
  9. 电子过载继电器行业调研报告 - 市场现状分析与发展前景预测(2021-2027年)
  10. iis绑定php程序应用池设定,什么是IIS应用程序池以及应用程序池详解
  11. SharePoint 网站搬迁
  12. keepalived+nginx双机热备+负载均衡
  13. 三节串联锂电池充电管理芯片,IC电路图,BOM表
  14. 常见的几种web api 接口加密签名模式
  15. wxpython wx.Destroy()和wx.Close()区别
  16. Android使用Bugly实现静默安装/自动安装app
  17. stm32f7网口_【STM32F7】STM32F7开发篇-超详细操作步骤
  18. 引用base64包maven打包异常情况
  19. 潘晓婷:19年的专注成就九球天后
  20. VR+电击,禁毒新方式

热门文章

  1. Python正则表达式-欧阳桫-专题视频课程
  2. 手机彩信编辑软件1.0
  3. 2020蓝牙耳机排行榜:最受欢迎平价蓝牙耳机TOP10不要错过
  4. 当计算摄影成为行业共识,手机影像竞争将卷向何方?
  5. Win32学习笔记(四)窗口的创建
  6. vant-weapp安装引用
  7. windows局域网共享打印机
  8. Python爬虫【零】问题介绍 -- 对“微博辟谣”账号的历史微博进行数据采集
  9. 2022年外贸营第一篇文章
  10. [git]切换分支,文件的存留