gridbagconstraints什么意思_gridlayout布局参数

gridbagconstraints什么意思_gridlayout布局参数GridBagConstraints参数详解gridBagConstraints参数gridx=2;//X=2gridy=0;//Y=0gridwidth=1;//横占一个单元格gridheight=1;//列占一个单元格weightx=0.0;//当窗口放大时,长度不变weighty=0.0;//当窗口放大时,高度不变

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

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);
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/195455.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • easyui 给文本框 checkbox赋值问题「建议收藏」

    easyui 给文本框 checkbox赋值问题

    2022年2月1日
    38
  • 删除office2016专业版多余组件

    删除office2016专业版多余组件一、首先打开控制面板,选择卸载程序,选中office2016专业版,如图所示,右击选择“更改”进入如下的图片,选择添加或删除功能选择要删除或卸载的组件,点击选择“不可用”;然后就会出现如图所示的图片最后关闭即可…

    2022年7月19日
    45
  • 托尔斯泰《安娜·卡列尼娜》主要人物

    托尔斯泰《安娜·卡列尼娜》主要人物版本:上海译文2013版译者高慧群等奥博朗斯基公爵:斯捷潘·阿尔卡季奇·奥勃朗斯基公爵(在社交场合他叫斯季瓦)达里娅·亚历山德罗夫娜,小名多莉,公爵夫人格里沙——小儿子塔尼娅——大女儿,与安娜八岁的谢廖扎同年马特维——仆人马特廖娜·菲利莫诺夫娜——奶妈马特廖莎,捷连季——车夫阿尼奇金伯爵——斯季瓦的新任长官瓦尔瓦拉,公爵小姐——斯捷潘的姑妈,多莉早就认识她,对她并不尊重。她知道公爵小姐瓦尔瓦拉整个一生都在富裕的亲戚家里当食客。斯季瓦说,她一生的整个目标就是要证明自己比卡捷琳娜·帕夫洛

    2022年5月25日
    384
  • 一篇文章带你揭 秘现代浏览器原理与方法_浏览器发送请求原理

    一篇文章带你揭 秘现代浏览器原理与方法_浏览器发送请求原理现代浏览器原理揭秘首先我们先了解一些关键的计算机术语以及Chrome浏览器的多进程架构。前提计算机基础概念1.CPU(CentralProcessingUnit)中央处理器,解释计算机指令以及处理计算机软件中的数据,功能强大,它可以串行地一件接着一件处理交给它的任务现代电脑上cpu通常会有多个核心,比如经常听到的8核处理器,4核处理器等等。因为多核心CPU可以大大提高手机和电脑的运算能力CPU的核心数是指物理上,也就是硬件上存在着几个核心。比如,双核就是包括2个相对独立的CPU核心

    2025年12月5日
    1
  • get请求怎么传递多个参数

    get请求怎么传递多个参数

    2020年11月12日
    346
  • 【愚公系列】2022年02月 wireshark系列-数据抓包分析之DHCP协议

    【愚公系列】2022年02月 wireshark系列-数据抓包分析之DHCP协议实验步骤一获取DHCP数据包在windows平台上获取DHCP数据包在windows平台上,可以使用两种简单的方法实现,其原理一样。(1)在cmd上,使用ipconfig命令来获取。执行完上述命令后,将释放当前使用的地址信息。重新获取地址信息,执行命令如下执行完上面的命令后,将重新获取地址信息。在获取地址时,将会经过上面讲述的DHCP的4个阶段。这样,我们就能获取到DHCP数据包了。(2)通过禁用和启用网卡获取DHCP数据包在windows平台上,也可以通过禁用和启用网卡获取DHCP数

    2022年5月23日
    43

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号