`

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 ::: :指定宽度属性

分享到:
评论
Global site tag (gtag.js) - Google Analytics