快速业务通道

Eclipse开发经典教程之常用SWT组件 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-17

Eclipse开发经典教程之常用SWT组件

时间:2011-04-11 阿甘

在介绍组件之前,有必要介绍一下Control类。Control类是一个抽象类,它是所有窗口组 件(即在Windows中能获得句柄的部件)的基类。

Control类的继承关系

Control类是为继承而设计的,所有窗口组件都继承于Control类,如图1所示。

Eclipse开发经典教程之常用SWT组件 - 编程入门网

图1 Control类的继承关系

Control的一个实例代表Windows中的一个窗口组件,它中有窗口名柄属性,但是在程序中 不能够直接访问。

Control类的常用方法

Control类提供了窗口组件中的常用方法,所有的窗口组件都可以调用Control类的方法, 常用方法如下。

1. setBounds (int x, int y, int width, int height)

解释:设定窗口组件的位置,参数(x,y)为窗口组件左上角顶点的相对于父窗口坐标, (width,height)为窗口的宽度和高度。

示例:button.setBounds(40, 50, 100, 30)。

2. setEnabled (boolean enabled)

解释:设定窗口是否可用,参数enabled为true表示窗口可用,为false表示窗口禁用。

示例:button.setEnabled(false)。

3. setVisible (boolean visible)

解释:设定窗口是否可显示,参数visible为true表示窗口可显示,为false表示窗口不可 显示。

示例:button.setVisible(false)。

4. setToolTipText (String string)

解释:设定鼠标指向窗口时的提示信息,参数string为提示信息的内容。

示例:button.setToolTipText("very good")。

Eclipse开发经典教程之常用SWT组件(2)

时间:2011-04-11 阿甘

5. setFont (Font font)

解释:设定窗口文字的字体,参数font为字体对象。

示例:button. setFont (font)。

6. setForeground (Color color)

解释:设定窗口的前景色,参数color为颜色对象。

示例:button. setForeground (color)。

7. setBackground (Color color)

解释:设定窗口的背景色,参数color为颜色对象。

示例:button. setBackground (color)。

8. setCursor (Cursor cursor)

解释:设定窗口的光标形状,参数cursor为光标对象。

示例:button.setCursor(new Cursor(null,SWT.CURSOR_WAIT));

9. Control (Composite parent, int style)

解释:窗口组件中的构造函数一般会调用Control类的构造函数,参数parent为当前构建 的窗口的父窗口,style为当前构建窗口的样式(默认可以指定为SWT.NONE)。

示例:Button button = new Button(shell, SWT.NONE)。

另外,Control类还实现了一些和窗口有关的方法,例如createWidget和createHandle等 ,这些方法直接和操作系统相关,有兴趣的读者可以继续研究。

提示:并不是所有的组件调用Control的方法都有用,有些方法是为某些特殊的组件而存 在的。

常用组件

有些组件在大多数操作系统都存在,SWT直接通过JNI直接封装了这些组件。

按钮

Button(按钮)是SWT组件常用的一种。在组件中添加一个按钮很简单,只需要指定按钮的 父组件和相应的样式即可,例如:“Button button = new Button(shell, SWT.PUSH)”语句 在shell组件中添加了一个普通的按钮。

另外,添加一个按钮一般来说会指定按钮的位置(如果未指定布局信息)和按钮的显示标签 ,如例程1所示。

例程1 HelloWorldButton.java

/** * 为了节省篇幅,所有的import类已经被注释 * 读者可以通过 ctrl+shift+o快捷键,自动引入所依赖的类 * 如果有问题可发邮件到ganshm@gmail.com    * */ public class HelloWorldButton { public HelloWorldButton() { Display display = new Display(); Shell shell = new Shell(display); // 指定父组件和按钮样式 Button button = new Button(shell, SWT.PUSH); //指定按 钮的位置 button.setBounds(40, 50, 100, 30); //指定按钮的显示标签 button.set

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号