GUI之布局管理器(二)

本文继续介绍GUI布局管理器,重点讲解GridBagLayout的复杂与灵活性,包括其构造方法和约束设置。同时,探讨了BoxLayout的垂直或水平布局特性,以及Box类在布局设计中的辅助作用。最后,提到了null布局,即绝对布局的使用。
摘要由CSDN通过智能技术生成

上篇我们已经介绍了FlowLayout 、BordLayout、CardLayout、GridLayout等四种布局管理器,本篇我们继续补充其它几种布局管理器。

五、GridBagLayout(网格包布局)

1、特点:

    a、与其他布局相比,网格布局要复杂得多,不过也相对灵活;

    b、与网格布局相比,网格包布局允许组件大小各不相同,且一个组件可跨越一个或多个网格;

    c、网格包布局还需创建一个或多个GridBagContraints对象,用来设置布局约束条件;

    d、需通过调用setConstraints( )方法建立GridBagContraints对象和受控组件的关联;

    e、GridBagContraints是网格包布局的核心,其对象可重复使用,只需改变相关属性即可。

2、构造方法:

     GridBagLayout( );   

    GridBagContraints();

    GridBagContraints(int gridx, int gridy, int gridwidth, int gridheight, double weightx, double weighty, int anchor, int fill, Insets insets, int ipadx, int ipady);

 GridBagLayout只有一种无参构造方法;

而GridBagContraints有两种构造方法,其中第一种构造方法将所有字段设为默认值;第二种构造方法将其所有字段设置为传入参数,各参数作用如下:

gridx和gridy:设置组件的左上角所在网格的横向和纵向索引,默认值为GridBagContraints.RELATIVE,表示当前组件紧跟上一组件后面;

gridwidth和gridwidth:设置组件横向、纵向跨越网格数,默认值为1,当把其值设为GridBagConstraints.REMAINDER,表示当前组件为所在行或列上的最后一个组件;

weightx和weighty:设置组件占领容器水平和垂直方向多余空白区域的比例(即权重),默认值为0,即不占领多余空间;

anchor:指定组件应置于其显示区域中何处。可能的值有三种:绝对值、相对于方向的值和相对于基线的值,默认值为相对于基线的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值