分享
 
 
 

(方志文)MutableGridLayout布局管理器使用说明

王朝java/jsp·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

该布局管理器功能强大,界面上组件会根据界面的缩放进行比例缩放.

其使用起来较为简单,主要操作函数如下:

new MutableGridLayout(int cols,int rows,int xgap,int xgap)

该构造函数用来创建一个cols列rows行的界面,其中竖列间隔为xgap,横行间隔为yGap

这样将整个界面作为x*y的矩阵方格.

getBox(int col,int row)

此函数用来说明你要操作的对象现在是(col+1,row+1)这个格子.****注意最左上面的格子

是(0,0)而不是(1,1)这与数组的表达相通.

split(int row,int col)或split(int row ,int col,int xGap,int yGap)

用来将所选的格子进行切分,其中split(int row,int col)是将操作对象(格子)切割成为cols列rows行

split(int row ,int col,int xGap,int yGap)是将操作对象(格子)切割成为cols列rows行,其中竖列间隔为xgap,横行间隔为yGap

当然操作是要有对象的所以一般格式为getBox(m,n).split(x,y)

merge(int startX,int startY,int endX,int endY)

用来把多个单元格进行合当然可以合并切割出来的小格子.

其含义为将(startX+1,startY+1)格子与(endX+1,endY+1)格子合并为一个格子

**小技巧:如果你所给的格子是处于对角线上的格子那么将会把周围的格子也合并进来.

例如:merge(0,0,1,1)则(0,0) (0,1) (1,0) (1,1)格子将被合为一个大格子.

setBlank(boolean)

用来指出你的哪个单元格不需要放入组件.

setWidth(int num,double value)或setHeight(int num,double value)

用来指出第num列或第num行的宽度或高度当你的value>1时那么认为你给的是绝对数值.value<1时

认为你给的是比例数值.

说明:如果你想得到分割以后的格子上的小格子可以重复使用getBox函数.

好了主要操作函数就这些(已经可以保证你的开发需求了)其它的功能您自己慢慢使用中就会明白了.

需要注意的是加入组件的顺序是按照你所分好的格子从上到下从左到右加入,所以一个界面您可能

有很多种划分方法来实现.可是你的加入组件的顺序估计就一种.所以组件的加入顺序请您勿必认真对待.

总之,这个布局管理器相当强大,如果您需要使用的话可以去作者blog索取当然,使用时不要忘了他人的版权声明!!!

例子程序代码和效果如下:

import javax.swing.JButton;

import javax.swing.JFrame;

import org.fswan.ui.MutableGridLayout;

/**

* @sampleauthor shaobotao(邵波涛)

* @author Swan Fong(方志文)

* MutableGridLayout布局的样例程序

*/

public class Test

{

public static void main(String[] args)

{

JFrame jf = new JFrame("Test Layout");

MutableGridLayout ml = new MutableGridLayout(4,4,5,5);

ml.getBox(1,1).split(2,1);

ml.getBox(3,3).split(1,4);

ml.getBox(1,2).getFill();

ml.merge(0,1,1,1);

ml.merge(2,0,2,1);

ml.getBox(3,0).setBlank(true);

ml.merge(1,2,2,3);

ml.getBox(0,2).split(2,5);

ml.getBox(0,3).split(3,1);

ml.getBox(0,2).merge(0,3,1,3);

ml.getBox(0,3).getBox(1,0).setBlank(true);

ml.getBox(0,2).getBox(0,2).setBlank(true);

jf.getContentPane().setLayout(ml);

for (int i = 0; i < 30; i++)

{

jf.getContentPane().add(new JButton("Button"+i));

}

jf.setSize(200,200);

jf.setVisible(true);

jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

}

如果还有不懂,请发贴或者直接给作者或者我发邮件我的EMail:shaobotao@163.com

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有