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. WordPress的用户系统总结

    原文发表自我的个人主页,欢迎大家訪问~转载请保留本段,或注明原文链接:http://www.hainter.com/wordpress-user-module keyword:WordPress,用户 ...

  2. JS - 6款鼠标悬停效果

    下载地址:http://www.lanrentuku.com/js/tupian-1093.html

  3. android花屏效果的实现(ViewPager的基本使用)

    1.程序运行效果图 二.代码实现 1.main.xml <RelativeLayout xmlns:android="http://schemas.android.com/apk/re ...

  4. Appium Server 传递Android参数

    Appium  server Capabilities 传递参数    Android 特定 Android Only Capability Description Values appActivit ...

  5. list view Item 里面有ImageButton

    list view Item 里面有ImageButton listview 的item中有ImageButton, 或者 Button. 目的: ImageButton 和 Button的click ...

  6. keyset与entryset

    1.基本概述 Set<Map.Entry<K,V>> entrySet()  返回此映射中包括的映射关系的 set 视图. Set<K>              ...

  7. 推荐一个第三方Qt库的集合

    https://inqlude.org/ Stable libraries | Development versions | Unreleased | Commercial | All attica ...

  8. Lucene.Net 2.3.1开发介绍 —— 三、索引(六)

    原文:Lucene.Net 2.3.1开发介绍 -- 三.索引(六) 2.2 Field的Boost 如果说Document的Boost是一条线,那么Field的Boost则是一个点.怎么理解这个点呢 ...

  9. javascript实现的可改变滚动方向的无缝滚动

    效果图如下: 代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http:// ...

  10. disruptor流程

    这里先不提那些编译器方面的优化.只看一下基于无锁环形队列的生产者消费者模型的工作流程.上一个图先: 当中,buffer是一个数组,用来模拟环形队列. slowest_reader记录最慢的reader ...