eclipse开发经典教程常用swt组件

上传人:xzh****18 文档编号:45912346 上传时间:2018-06-20 格式:PDF 页数:15 大小:179.48KB
返回 下载 相关 举报
eclipse开发经典教程常用swt组件_第1页
第1页 / 共15页
eclipse开发经典教程常用swt组件_第2页
第2页 / 共15页
eclipse开发经典教程常用swt组件_第3页
第3页 / 共15页
eclipse开发经典教程常用swt组件_第4页
第4页 / 共15页
eclipse开发经典教程常用swt组件_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《eclipse开发经典教程常用swt组件》由会员分享,可在线阅读,更多相关《eclipse开发经典教程常用swt组件(15页珍藏版)》请在金锄头文库上搜索。

1、Eclipse 开发经典教程:常用 SWT 组件 Eclipse 开发经典教程:常用 SWT 组件 在介绍组件之前,有必要介绍一下 Control 类。Control 类是一个抽象类,它是所有窗口组件(即在 Windows 中能获得句柄的部件)的基类。 Control 类的继承关系 Control 类是为继承而设计的,所有窗口组件都继承于 Control 类,如图 1所示。 图 1 Control 类的继承关系 Control 的一个实例代表 Windows 中的一个窗口组件, 它中有窗口名柄属性,但是在程序中不能够直接访问。 Control 类的常用方法 Control 类提供了窗口组件中的

2、常用方法,所有的窗口组件都可以调用 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(fa

3、lse)。 3. setVisible (boolean visible) 解释:设定窗口是否可显示,参数 visible 为 true 表示窗口可显示,为 false 表示窗口不可显示。 示例:button.setVisible(false)。 4. setToolTipText (String string) 解释:设定鼠标指向窗口时的提示信息,参数 string 为提示信息的内容。 示例:button.setToolTipText(“very good“)。 5. setFont (Font font) 解释:设定窗口文字的字体,参数 font 为字体对象。 示例:button. set

4、Font (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.CU

5、RSOR_WAIT); 9. Control (Composite parent, int style) 解释:窗口组件中的构造函数一般会调用 Control 类的构造函数,参数 parent 为当前构建的窗口的父窗口, style 为当前构建窗口的样式(默认可以指定为SWT.NONE)。 示例:Button button = new Button(shell, SWT.NONE)。 另外,Control 类还实现了一些和窗口有关的方法,例如 createWidget 和 createHandle 等,这些方法直接和操作系统相关,有兴趣的读者可以继续研究。 提示:并不是所有的组件调用 Cont

6、rol 的方法都有用,有些方法是为某些特殊的组件而存在的。 常用组件 有些组件在大多数操作系统都存在, SWT 直接通过 JNI 直接封装了这些组件。 按钮 Button(按钮)是 SWT 组件常用的一种。在组件中添加一个按钮很简单,只需要指定按钮的父组件和相应的样式即可,例如:“Button button = new Button(shell, SWT.PUSH)”语句在 shell 组件中添加了一个普通的按钮。 另外, 添加一个按钮一般来说会指定按钮的位置(如果未指定布局信息)和按钮的显示标签,如例程 1 所示。 例程 1 HelloWorldButton.java /* * 为了节省篇幅

7、,所有的 import 类已经被注释 * 读者可以通过 ctrl+shift+o 快捷键,自动引入所依赖的类 * 如果有问题可发邮件到 */ publicclassHelloWorldButton publicHelloWorldButton() Displaydisplay=newDisplay(); Shellshell=newShell(display); /指定父组件和按钮样式 Buttonbutton=newButton(shell,SWT.PUSH); /指定按钮的位置 button.setBounds(40,50,100,30); /指定按钮的显示标签 button.setTe

8、xt(“ClickMe“); shell.setSize(200,200); shell.open(); while(!shell.isDisposed() if(!display.readAndDispatch() display.sleep(); display.dispose(); publicstaticvoidmain(Stringargs) newHelloWorldButton(); 上例中展示了如何在一个窗口中添加一个按钮,程序运行效果如图 2 所示。 图 2 按钮组件 按钮的样式有很多种,在 SWT 中,CheckBox(复选框)和 RadioBox(单选框)都是不同样式的按

9、钮。 提示:如果按钮为复选框或单选框,可以通过“getSelection”方法判断按钮是否被选中。 标签 Lable(标签)是 SWT 组件常用的组件之一。在组件中添加一个标签很简单,只需要指定按钮的父组件和相应的样式即可,例如“Label label = new Label(shell, SWT.SEPARATOR | SWT.VERTICAL)”语句在 shell 组件中添加了一个标签。 可以为 SWT 组件指定复合样式,SWT 将按复合样式显示组件,如标签示例,例程2 所示。 例程 2HelloWorldLabel.java publicclassHelloWorldLabel publ

10、icstaticvoidmain(Stringargs) Displaydisplay=newDisplay(); Shellshell=newShell(display); shell.setLayout(newFillLayout(); Labellabel1=newLabel(shell,SWT.WRAP); label1.setText(“verygood!“); newLabel(shell,SWT.SEPARATOR|SWT.HORIZONTAL); newLabel(shell,SWT.SEPARATOR|SWT.VERTICAL); Labellabel2=newLabel(s

11、hell,SWT.NONE); label2.setText(“verygood!“); shell.setSize(200,70); shell.open(); while(!shell.isDisposed() if(!display.readAndDispatch() display.sleep(); display.dispose(); 上例窗口中添加了 4 个标签,并为每个标签设置了不同的显示样式,程序运行效果如图 3 所示。 图 3 标签组件 标签可以作为显示文本的组件,也可以作为分隔符,如果作为分隔符,标签不显示文字信息。 文本框 Text 组件是 SWT 中的文本框,在组件中添

12、加一个文本框很简单,只需要指定文本框的父组件和相应的样式即可,例如“Text t = new Text(shell, SWT.MULTI | SWT.BORDER | SWT.WRAP | SWT.V_SCROLL)”语句在 shell 组件中添加了一个文本框。 文本框有多种显示样式,如例程 3 所示。 例程 3HelloWorldText.java publicclassHelloWorldText publicstaticvoidmain(Stringargs) Displaydisplay=newDisplay(); Shellshell=newShell(display); shell

13、.setLayout(newGridLayout(1,false); /添加单行文本框 newText(shell,SWT.BORDER); /添加右对齐单行文本框 newText(shell,SWT.RIGHT|SWT.BORDER); /添加以密码形式显示的文本框 newText(shell,SWT.PASSWORD|SWT.BORDER); /添加只读文本框 newText(shell,SWT.READ_ONLY|SWT.BORDER).setText(“ReadOnly“); /添加多行显示文本框 Textt=newText(shell,SWT.MULTI|SWT.BORDER|SWT

14、.WRAP|SWT.V_SCROLL); /给文本属性赋值 t.setText(“verylongstingtest!verylongstingtest!verylongstingtest!“ +“verylongstingtest!“); t.setLayoutData(newGridData(GridData.FILL_BOTH); shell.setSize(200,200); shell.open(); while(!shell.isDisposed() if(!display.readAndDispatch() display.sleep(); display.dispose();

15、窗口中添加了 5 个不同样式的文本框, 并为每个文本框设置了不同的显示样式,程序运行效果如图 4 所示。 图 4 文本框组件 不同类型的标签只要指定不同的样式即可,如上所示,文本框有左对齐、右对齐、密码框、只读文本框和多行显示的文本框。 下拉框 Combo 组件是 SWT 中的下拉列表框,用户可以通过“Combo combo = new Combo(shell, SWT.DROP_DOWN)”在 shell 组件上添加下拉列表框,另外,可以通过“combo.setItems (ITEMS)”设置下拉列表框的下拉列表,其中“ITEMS”是String 的数组。下拉列表框有几种显示样式,代码如例程

16、 4 所示。 例程 4HelloWorldCombo.java publicclassHelloWorldCombo /下拉列表项 privatestaticfinalStringITEMS=“Alpha“,“Bravo“,“Charlie“,“Delta“, “Echo“,“Foxtrot“,“Golf“,“Hotel“,“India“,“Juliet“,“Kilo“,“Lima“,“Mike“, “November“,“Oscar“,“Papa“,“Quebec“,“Romeo“,“Sierra“,“Tango“,“Uniform“, “Victor“,“Whiskey“,“X-Ray“,“Yankee“,“Zulu“ ; publi

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号