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. android ListView和GridView拖拽移位实现代码

    关于ListView拖拽移动位置,想必大家并不陌生,比较不错的软件都用到如此功能了.如:搜狐,网易,百度等,但是相比来说还是百度的用户体验较好,不偏心了,下面看几个示例:             首先 ...

  2. 创建采购订单批到程序用的BAPI

    CALL FUNCTION 'BAPI_PO_CREATE1' EXPORTING poheader = poheader poheaderx = poheaderx * POADDRVENDOR = ...

  3. 红眼技术博客 » redis连接池红眼技术博客 » redis连接池

    红眼技术博客 » redis连接池 redis连接池

  4. 关于jquery文件上传插件 uploadify 3.1的使用

    要使用uplaodify3.1,自然要下载相应的包,下载地址http://www.uploadify.com/download/,这里有两种包,一个是基于flash,免费的,一个是基于html5,需要 ...

  5. KL25开发板利用串口蓝牙与PC通信

    KL25开发板芯片本身支持三个串口,uart0,uart1,uart2.其中uart0不太一样,在数据手册里面单独一章介绍:而uart1和uart2则是一样的. 我所使用的串口蓝牙模块是BC04,支持 ...

  6. linux内核编译环境配置

    linux内核编译环境配置 如果不是编译内核,只需要安装与内核相匹配的kernel-devel开发包即可.即是/lib/modules/`uname -r`/build -> /usr/src/ ...

  7. linux串口编程总结

    串口本身.标准和硬件 † 串口是计算机上的串行通讯的物理接口.计算机历史上,串口以前被广泛用于连接计算机和终端设备和各种外部设备.尽管以太网接口和USB接口也是以一个串行流进行数据传送的.可是串口连接 ...

  8. Spring配置DataSource数据源

    在Spring框架中有例如以下3种获得DataSource对象的方法: 1.从JNDI获得DataSource. 2.从第三方的连接池获得DataSource. 3.使用DriverManagerDa ...

  9. Oracle varchar2最大支持长度(转)

    oerr ora 0650206502, 00000, "PL/SQL: numeric or value error%s"// *Cause: An arithmetic, nu ...

  10. <Win32_14>__win32控件(2)__教你自学掌握所有控件的玩法

    学习win32 API 编程,我们应该善于利用微软给我们提供的一些辅助工具,例如大家都知道的MSDN.SPY++等等. 今天在讲述之前呢,先给大家介绍一个很有用的工具——Control Spy——它的 ...