当前位置:首页 » 服务器技术
开发技术指南» 文章正文
    引言: 2.3 GridLayout GridLayout可能是最常用
 

 

    摘要: web设计中如何使用xml数据源对象http://www.100down.com/download/infoview/article_1225.html 日期:2004年6月29日 作者: 人气: 127 查看:[大字体 中字体 小字体]   xml数据源对象是一个activex控件,允许你在xml文件和html页面之间操作数据。本文将向你展示如何从各种xml数据源中提取数据,以及如何使用j......
    摘要: 使用jdom操作xml数据,生成含jtree的applet jagie 原创 (参与分:291,专家分:1430) 发表:2003-11-5 下午4:06 更新:2003-11-5 下午4:22 版本:1.0 阅读:3608次http://www.javaresearch.org/article/showarticle.jsp?column=287&thread=10150 关键词:xml,j......


Eclipse界面编写实例(2)--理解布局3
2.3 gridlayout

2.3.1 gridlayout的可设置域 【相关文章:windows优化系统后oracle9i

gridlayout可能是最常用的、功能最强大的标准布局类了,当然它也最复杂。gridlayout把容器里的组件摆放在一个格子里,它有许多可设置的域,并且同rowlayout类似,组件可以有相应的布局数据,称作griddata。gridlayout的强大在于它可以通过griddata来设置每一个控件。 【扩展阅读:利用JSP在Web页面中实现Auth认证

numcolumns 域是gridlayout的最重要的域,并且通常是第一个需要设置的域。组件从左到右摆放在列里,当numcolumns + 1个组件添加到容器中时,将创建一个新行。默认只有一列。以下代码创建了由gridlayout管理的含有5个具有不同宽度的按钮的shell,随后的列表显示了当numcolumns设为1,2或3时的效果。 【扩展信息:在JBOSS,TOCMAT上部署J2EE

numcolumns

   display display = new display();

   shell shell = new shell(display);

   gridlayout gridlayout = new gridlayout();

   gridlayout.numcolumns = 3;

   shell.setlayout(gridlayout);

   new button(shell, swt.push).settext("b1");

   new button(shell, swt.push).settext("wide button 2");

   new button(shell, swt.push).settext("button 3");

   new button(shell, swt.push).settext("b4");

   new button(shell, swt.push).settext("button 5");

   shell.pack();

   shell.open();

   while (!shell.isdisposed()) {

      if (!display.readanddispatch()) display.sleep();

   }

numcolumns = 1

numcolumns = 2

numcolumns = 3

makecolumnsequalwidth

makecolumnsequalwidth域强制各列具有相同的宽度。默认为false。把上面的例子改为含有3个等宽的列,效果如下图所示(注意组件在列中左对齐,原因见后面介绍):

marginwidth, marginheight, horizontalspacing, 以及 verticalspacing

gridlayout边距与间距域与rowlayout的类似,不同的是左边距与右边距统一成marginwidth,上边距与下边距统一成marginheight。同样可以分别设置horizontalspacing与verticalspacing(rowlayout中的间距根据它的type类型设置水平间距或者垂直间距)。

2.3.2 griddata对象的域

griddata是gridlayout对应的布局数据,可以通过setlayoutdata设置组件的布局数据。例如,可以采用如下代码设置按钮的griddata:

   button button1 = new button(shell, swt.push);

   button1.settext("b1");

   button1.setlayoutdata(new griddata());

       以上代码创建了一个含有默认值的griddata对象,其效果与没有设置布局数据是一样的。有两种方式可以创建含有指定域值的griddata对象。第一种方式就是直接设置各个域值,例如:

   griddata griddata = new griddata();

   griddata.horizontalalignment = griddata.fill;

   griddata.grabexcesshorizontalspace = true;

   button1.setlayoutdata(griddata);

第二种方式是通过利用便利的api来设置griddata的风格位:

   button1.setlayoutdata(new griddata(griddata.horizontal_align_fill | griddata.grab_horizontal));

       实际上,为了更方便还提供了一些风格位的组合,例如:

   button1.setlayoutdata(new griddata(griddata.fill_horizontal));

注意fill_ 风格同时设置对齐方式与占位方式。griddata的风格位只对布尔值与枚举值有效,数字域需要直接设置。


...   下一页
    摘要:写了这么久的代码,应该有个比较完善的学习方法了。多思考,网络上什么人都有,比我厉害的也不会有好多,有的话也不会经常来发贴。所以,不到逼不得已,决不到论坛发贴。靠自己思考,现在想不出来,暂时放一下,清醒一下头脑,总会解决的。实事求是,抓住一条线索,就要把它弄个水落石出,不要半途而废,这样等于前面的时间也浪费了,暂时弄不懂的问题要记录下来,以后通过某中方式弄明白。克服跳跃思维,解决一个问题的方法有好多种,特别是在我们还不是很清楚到底用什么方法来解决的时候,我们......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE