Eclipse3.0的swt编程[组图]
一、swt简介
Java语言的声望和它在桌面应用程序(GUI程序)所取得的成就显然极不相符,至今仍然很少能看到非常成功Java桌面程序。
<!-- frame contents -->
SWT本身仅仅是Eclipse组织为了开发Eclipse IDE环境所编写的一组底层图形界面 API。或许是无心插柳,或是有意为之,至今为止,SWT无论是在性能和外观上,都超越了SUN公司提供的AWT和SWING。目前Eclipse IDE已经开发到了2.1版本,SWT已经十分稳定。这里指的稳定应该包含两层意思:
一是指性能上的稳定,其中的要害是源于SWT的设计理念。SWT最大化了操作系统的图形构件API,就是说只要操作系统提供了相应图形的构件,那么SWT只是简单应用JNI技术调用它们,只有那些操作系统中不提供的构件,SWT才自己去做一个模拟的实现。可以看出SWT的性能上的稳定大多时候取决于相应操作系统图形构件的稳定性。
另一个稳定是指SWT API包中的类、方法的名称和结构已经少有改变,程序员不用担心由于Eclipse组织开发进度很快(Eclipse IDE天天都会有一个Nightly版本的发布),而导致自己的程序代码变化过大。从一个版本的SWT更新至另一版本,通常只需要简单将SWT包换掉就可以了。
二、Eclipse3.0的swt编程
1.swt比awt和swing要快多,因为它是利用操作系统的界面组件生成UI的,在java桌面设计领域掀起一场革命
2.环境配置:
windows系统+eclipse3.0
3.具体操作:
(1).新建一java项目,命名swt,文件结构如下:
+swt
+bin(编译输出)
+src(原文件)
+AddressBookUI.java
+swt-awt-win32-3062.dll(以下均从eclipsepluginsorg.eclipse.swt.win32_3.0.1oswin32x86下导入)
+swt-win32-3062.dll
+javaw.exe.manifest
(2).到项目的properties里,在java build path libraries里将swt.jar导入
(3).AddressBookUI.java原代码如下:
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.SWT;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Group;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Text;
import org.eclipse.swt.widgets.*;
import org.eclipse.swt.events.SelectionAdapter;
import org.eclipse.swt.events.SelectionEvent;