java swing MigLayout 布局管理

1. MigLayout 初始化的两种方法:

MigLayout l = new MigLayout();

MigLayout l = new MigLayout("","","");

 主要使用的是以上两种构造函数,第一种无参的就不用介绍了,主要是第二种。

 第一个参数可以使用以下语句:

wrap + 数字:指定默认在第几个组件后进行换行,如: wrap 2 表示在第二个组件后进行分行。

        insets + 数字:指定默认与边界的距离,有两种方式:insets 10 表示四边均为10,insets 1 2 3 4 分别指示顶部、左侧、下部、右侧距离

 

第二个参数:指定横向的单元格的各个属性。每个单元格的属性用[]括起来。如[][][]表示一行有三个单元格。各单元格可以定制的属性如下:

grow: x 方向按上一级的宽度进行延伸。注意如果此处不添加grow,那么在添加组件的时候使用growx会没有效果。

40!: 表明该列的单元格宽度固定为40

        40%:表示该组件占用整个容器的百分比

10:30:40:表明该列的单元格宽度最小为10、最佳为30、最大为40

::40:表明该单元格最大值为40。其它也可以是:30: 或者:30::等。

center/right/left: 指定该组件在水平方向的对齐方式

同时,也可以指定各个单元格之间的间隔:[]30[][]说明第一个和第二个单元格之间相隔30(该参数不会计算单元格)

 

第三个参数:指定纵向的单元格的各个属性。

grow: 指定纵向是否进行延伸

::: :指定高度属性,与第二个参数意义一致。

top/bottom/center:指定在垂直方向的对齐方式。

 

2. 添加组件:

panel.add(button,"");

""里面使用各个参数,经常使用的有以下参数:

growx: 在水平方向延伸

growy:在垂直方向延伸

span:占用本行的所有单元格

span 2: 占用横向的两个单元格

span 2 3: 占用横向两个、纵向三个单元格

        cell 0 1  6  1   (该参数是用坐标来表示的,X轴和Y轴,坐标值都是从0开始,参数分别表示,占用X轴0 的位置,占用Y轴1的位置,占用6列,占用Y轴的坐标)

wrap: 添加本组件后进行分行 

gapleft/gapright/gaptop/gapbottom: 指定四周的间隔

split 2: 将该单元格分成两个单元格

h ::: :指定高度属性,如h 10:20:30 或者h 10! 或者h ::20或者h :20:或者h 20::等。

w ::: :指定宽度属性



  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java Swing 的盒子布局管理器(Box Layout Manager)是一种非常常用的布局管理器。它可以将组件垂直或水平地排列,使组件之间具有等距离的间隔。盒子布局管理器使用了一个概念叫做盒子(Box),可以是水平盒子(Horizontal Box)或者垂直盒子(Vertical Box)。在盒子中,每个组件都沿着盒子的方向排列,可以根据需要设置组件之间的间距,也可以设置组件的对齐方式。 使用盒子布局管理器的步骤如下: 1. 创建一个容器对象,例如 JPanel。 2. 调用 JPanel 的 setLayout 方法,设置盒子布局管理器。 3. 创建需要添加到容器中的组件对象。 4. 调用容器的 add 方法,将组件添加到容器中。 下面是一个创建水平盒子的示例代码: ``` JPanel panel = new JPanel(); panel.setLayout(new BoxLayout(panel, BoxLayout.X_AXIS)); JLabel label1 = new JLabel("Label 1"); JLabel label2 = new JLabel("Label 2"); JLabel label3 = new JLabel("Label 3"); panel.add(label1); panel.add(Box.createHorizontalStrut(10)); // 添加一个水平间距 panel.add(label2); panel.add(Box.createHorizontalGlue()); // 添加一个水平可伸缩的空白区域 panel.add(label3); ``` 在这个示例中,创建了一个 JPanel 对象,并设置了水平盒子布局管理器。然后创建了三个 JLabel 组件,分别添加到 JPanel 中,并使用了 Box.createHorizontalStrut 和 Box.createHorizontalGlue 方法添加了水平间距和可伸缩的空白区域。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值