1. 参数;verticalSpan

GridData gridData=new GridData();
gridData.verticalSpan=100;

final Text nameText=new Text(shell, SWT.BORDER);
nameText.setLayoutData(gridData);

  可以发现,verticalSpan代表的是控件占据的行数。

若代码如下:

public class LBMShow{
public static void main(String args[]){
final Display display=Display.getDefault();
final Shell shell=new Shell(display);
shell.setText("Hello");
GridLayout gridLayout=new GridLayout(2, true);
GridData gridData=new GridData();
gridData.verticalSpan=100;
shell.setLayout(gridLayout); final Label nameLabel=new Label(shell, SWT.BORDER);
nameLabel.setText("name: ");
final Text nameText=new Text(shell, SWT.BORDER);
nameText.setText("1");
nameLabel.setLayoutData(gridData);
nameText.setLayoutData(gridData); final Label passwdLabel=new Label(shell, SWT.BORDER);
passwdLabel.setText("password: ");
final Text passwdText=new Text(shell, SWT.BORDER);
passwdText.setText("2"); final Button button = new Button(shell, SWT.NONE);
button.setText("登录");
//button.setBounds(32, 28, 58, 22);
shell.open();
//shell.layout(); //消息循环
while (!shell.isDisposed()) {
if (!display.readAndDispatch())
display.sleep();
}
}
}

则效果如下:

2.参数: horizontalSpan

  horizontalSpan代表的是:一个控件所占列数,默认一行包含1个位置,所以若将其设置为2时,这个控件会独占一行。

代码:

public class LBMShow{
public static void main(String args[]){
final Display display=Display.getDefault();
final Shell shell=new Shell(display);
shell.setText("Hello");
GridLayout gridLayout=new GridLayout(2, true);
GridData gridData=new GridData();
gridData.horizontalSpan=2;
shell.setLayout(gridLayout); final Label nameLabel=new Label(shell, SWT.BORDER);
nameLabel.setText("name: ");
final Text nameText=new Text(shell, SWT.BORDER);
nameText.setText("1");
nameLabel.setLayoutData(gridData);
nameText.setLayoutData(gridData); final Label passwdLabel=new Label(shell, SWT.BORDER);
passwdLabel.setText("password: ");
final Text passwdText=new Text(shell, SWT.BORDER);
passwdText.setText("2"); final Button button = new Button(shell, SWT.NONE);
button.setText("登录");
//button.setBounds(32, 28, 58, 22);
shell.open();
//shell.layout(); //消息循环
while (!shell.isDisposed()) {
if (!display.readAndDispatch())
display.sleep();
}
}
}

效果;

3.参数: grabExcessHorizontalSpace

  这个参数只有true或false的选择,默认为false。他表示是否填充剩余的水平空间。

代码:

public class LBMShow{
public static void main(String args[]){
final Display display=Display.getDefault();
final Shell shell=new Shell(display);
shell.setText("Hello");
GridLayout gridLayout=new GridLayout(2, true);
GridData gridData=new GridData();
gridData.grabExcessHorizontalSpace=true;
shell.setLayout(gridLayout); final Label nameLabel=new Label(shell, SWT.BORDER);
nameLabel.setText("name: ");
final Text nameText=new Text(shell, SWT.BORDER);
nameText.setText("1");
nameLabel.setLayoutData(gridData);
nameText.setLayoutData(gridData); final Label passwdLabel=new Label(shell, SWT.BORDER);
passwdLabel.setText("password: ");
final Text passwdText=new Text(shell, SWT.BORDER);
passwdText.setText("2"); final Button button = new Button(shell, SWT.NONE);
button.setText("登录");
//button.setBounds(32, 28, 58, 22);
shell.open();
//shell.layout(); //消息循环
while (!shell.isDisposed()) {
if (!display.readAndDispatch())
display.sleep();
}
}
}

效果:

4. 参数: grabExcessVerticalSpace

此参数表示控件是否填充垂直的剩余空间。

代码:

public class LBMShow{
public static void main(String args[]){
final Display display=Display.getDefault();
final Shell shell=new Shell(display);
shell.setText("Hello");
GridLayout gridLayout=new GridLayout(2, true);
GridData gridData=new GridData();
gridData.grabExcessVerticalSpace=true;
shell.setLayout(gridLayout); final Label nameLabel=new Label(shell, SWT.BORDER);
nameLabel.setText("name: ");
final Text nameText=new Text(shell, SWT.BORDER);
nameText.setText("1");
nameLabel.setLayoutData(gridData);
nameText.setLayoutData(gridData); final Label passwdLabel=new Label(shell, SWT.BORDER);
passwdLabel.setText("password: ");
final Text passwdText=new Text(shell, SWT.BORDER);
passwdText.setText("2"); final Button button = new Button(shell, SWT.NONE);
button.setText("登录");
//button.setBounds(32, 28, 58, 22);
shell.open();
//shell.layout(); //消息循环
while (!shell.isDisposed()) {
if (!display.readAndDispatch())
display.sleep();
}
}
}

效果:

5.参数: widthHint

  这个参数的意思是控件的最小宽度,可以设定控件的宽度

代码;

public class LBMShow{
public static void main(String args[]){
final Display display=Display.getDefault();
final Shell shell=new Shell(display);
shell.setText("Hello");
GridLayout gridLayout=new GridLayout(2, true);
GridData gridData=new GridData();
gridData.widthHint=500;
shell.setLayout(gridLayout); final Label nameLabel=new Label(shell, SWT.BORDER);
nameLabel.setText("name: ");
final Text nameText=new Text(shell, SWT.BORDER);
nameText.setText("1");
nameLabel.setLayoutData(gridData);
nameText.setLayoutData(gridData); final Label passwdLabel=new Label(shell, SWT.BORDER);
passwdLabel.setText("password: ");
final Text passwdText=new Text(shell, SWT.BORDER);
passwdText.setText("2"); final Button button = new Button(shell, SWT.NONE);
button.setText("登录");
//button.setBounds(32, 28, 58, 22);
shell.open();
//shell.layout(); //消息循环
while (!shell.isDisposed()) {
if (!display.readAndDispatch())
display.sleep();
}
}
}

效果:

6.参数: heightHint

  这个参数表示控件的最小高度。

代码:

public class LBMShow{
public static void main(String args[]){
final Display display=Display.getDefault();
final Shell shell=new Shell(display);
shell.setText("Hello");
GridLayout gridLayout=new GridLayout(2, true);
GridData gridData=new GridData();
gridData.heightHint=500;
shell.setLayout(gridLayout); final Label nameLabel=new Label(shell, SWT.BORDER);
nameLabel.setText("name: ");
final Text nameText=new Text(shell, SWT.BORDER);
nameText.setText("1");
nameLabel.setLayoutData(gridData);
nameText.setLayoutData(gridData); final Label passwdLabel=new Label(shell, SWT.BORDER);
passwdLabel.setText("password: ");
final Text passwdText=new Text(shell, SWT.BORDER);
passwdText.setText("2"); final Button button = new Button(shell, SWT.NONE);
button.setText("登录");
//button.setBounds(32, 28, 58, 22);
shell.open();
//shell.layout(); //消息循环
while (!shell.isDisposed()) {
if (!display.readAndDispatch())
display.sleep();
}
}
}

效果:

7.参数;horizontalAlignment和verticalAlignment还没弄出来。

SWT的GridData一些参数的图示的更多相关文章

  1. SWT的GridLayout一些参数解释

    1. GridLayout类的说明GridLayout在包org.eclipse.swt.layout中,各参数意义如下:1. numColumns指定布局器中的列数2. horizontalSpac ...

  2. 关于SWT中的GridLayout布局方式

    GridLayout 布局的功能非常强大,也是笔者常用的一种布局方式.GridLayout是网格式布局,它把父组件分成一个表格,默认情况下每个子组件占据一个单元格的空间,每个子组件按添加到父组件的顺序 ...

  3. swt TableViewer

    http://blog.163.com/bluefield_wild/blog/static/8182709520085612235336/ package list; import java.uti ...

  4. 简介SWT Jface

    可以使用标准窗口小部件工具箱(Standard Widget Toolkit,SWT)和 JFace 库来开发用于 Eclipse 环境的图形用户界面,而且还可以将它们用于开发单独的 GUI 本机应用 ...

  5. 【插件开发】—— 7 SWT布局详解,不能再详细了!

    前文回顾: 1 插件学习篇 2 简单的建立插件工程以及模型文件分析 3 利用扩展点,开发透视图 4 SWT编程须知 5 SWT简单控件的使用与布局搭配 6 SWT复杂空间与布局搭配 前面几篇都提到了S ...

  6. 自定义SWT控件六之自定义Tab

    6.自定义tab 本章节提供的自定义tab 分为两类 tab上带删除按钮和添加按钮,可删除tab和添加tab tab不可删除和添加 6.1 不可删除tab package com.view.contr ...

  7. swt java 内嵌ActiveX控件

    这里用的是SWT/JFace开发application中SWT自带的org.eclipse.swt.ole.win32 包可以支持内嵌OLE和ActiveX. 具体用法如下: //创建一个OleFra ...

  8. Java SWT 做计算器。

    java  --  swt  - -  计算器 环境搭建 安装java.eclipse.以及对应的swt插件. 开始工程 建立工程: 在java下建立一个在其他 —- WindowsBuilder — ...

  9. 关于SWT中的表格(TableViewer类)

    JFace是SWT的扩展.它提供了一组功能强大的界面组件.其中包含表格,树,列表.对话框,向导对话框等. 表格是一种在软件系统中很常用的数据表现形式.特别是基于数据库的应用系统.表格更是不可缺少的界面 ...

随机推荐

  1. Sublime Text3 + Golang搭建开发环境

    Sublime Text3 + Golang搭建开发环境 http://blog.csdn.net/aqiang912/article/details/46775409 1.安装git 因为golan ...

  2. Swift - 使用xib添加新界面

    除了使用storyboard外,我们还可以使用xib来设计并创建页面. 1,下面通过一个样例来演示: (1)点击主界面的“信息”按钮,页面切换到信息界面 (2)点击信息界面的“返回”,关闭信息界面,回 ...

  3. 轻量级工具网站SimpleTools

    [解释]本来这篇文章是在前天发出来的,可是当时是刚申请的域名,现在都要域名实名认证,导致我发的项目网址打不开,惹来了很多博友的吐槽,在此说声抱歉,今天一大早就把实名认证提交了,现在网站已经可以正常访问 ...

  4. gap锁 对于unique index 和Ununique index

    Session 1: mysql> select * from s100; +-----+------+------+ | sn | id | info | +-----+------+---- ...

  5. find查找大于1M小于10M的文件 $ find . -size +1M -size -10M

    查找大于1M小于10M的文件$ find . -size +1M -size -10M

  6. Hibernate(五)——经典解析一对一关联映射

    前面两篇介绍了多对一.一对多的映射.今天分享下一对一的关联映射关系.有两种策略可以实现一对一的关联映射:主键关联.唯一外键关联. 主键关联——两个表有完全相同的主键值,来表示它们的一对一的关系.数据库 ...

  7. java entry

    我希望要一个ArrayList<Entry>,类似C++中的pair, 可是Map.Entry是个接口,不能实例化,能够像以下这样写 HashMap<Integer, Integer ...

  8. 与众不同 windows phone (33) - Communication(通信)之源特定组播 SSM(Source Specific Multicast)

    原文:与众不同 windows phone (33) - Communication(通信)之源特定组播 SSM(Source Specific Multicast) [索引页][源码下载] 与众不同 ...

  9. QS Network(最小生成树)

    题意:若两个QS之间要想连网,除了它们间网线的费用外,两者都要买适配器, 求使所有的QS都能连网的最小费用. 分析:这个除了边的权值外,顶点也有权值,因此要想求最小价值,必须算边及顶点的权值和. 解决 ...

  10. RT3070 USB WIFI 在连接socket编程过程中问题总结

    最近耗时多天,成功的将RT3070驱动.并解决了socket的网络编程,成功的在BA9G10上面实现了USB wif.连上家里的无线路由器,通过ubuntu下面建立的服务端程序,将BA9G10中的数据 ...