SWT-JFace.ppt

SWT-JFace.ppt

SWT-JFace SWT/JFace是一套用户图形界面的API JFace是为了方便开发SWT程序,在原有SWT基础上建立的一个更加容易使用,功能更强大的图形包JFace 安装SWT Designer 首先下载SWT Designer,它是Eclipse开发环境下的一个SWT图形界面开发插件包 下载的网址: SWT中常用的几个包及功能 org.eclipse.swt.widgets:该包中提供最基本的图形组件,包括按钮、文本框、标签和下拉菜单等。在该包中最基本的两个类是实现程序主窗口的shell和实现类似Panel的Composite容器类 org.eclipse.swt.event:该包中提供了与事件处理相关的监听器接口以及对应事件类,地位类似于Java AWT中的java.awt.event包 org.eclipse.swt.layout:该包中提供了与图形界面布局管理相关的类 org.eclipse.swt.custom:该包提供了对基本图形界面组件扩展的一些组件 org.eclipse.swt.graphics:该包提供与图片设置、鼠标指针设置、字体设置及绘图相关的API SWT-JFace SWT-JFace形成的理由 1998年Sun发布Swing,Swing具有迷人的特性,但同时也使程序发布日益复杂,运行效率低下。原因有 Swing的渲染 Swing的自动垃圾回收机制 Swing的设计架构 SWT-JFace SWT-JFace区别Swing Swing和SWT/JFace均会产生一个基于Java的平台无关的GUI,但他们实现方法迥异 SWT/JFace最显著的特征是直接调取操作系统,使用底层平台的组件,而不是自己重建 SWT/JFace的另一个重要特性是不依赖于垃圾自动回收机制 SWT-JFace SWT-JFace支持平台 Windows Windows CE (ARM PocketPC) Windows CE (ARM PocketPC, J2ME profile) Linux (x86/GTK 2) Linux (x86_64/GTK 2) Linux (PPC/GTK 2) Linux (x86/Motif) Solaris 8 (SPARC/GTK 2) Solaris 8 (SPARC/Motif) QNX (x86/Photon) AIX (PPC/Motif) HP-UX (HP9000/Motif) Mac OSX (Mac/Carbon) SWT-JFace 小结 让我们感谢IBM吧 争论SWT-JFace/Swing是没有意义的 SWT-JFace SWT-JFace编程起步 SWT的重要类Display,Shell 一个SWT sample JFace的重要类ApplicationWindow 一个SWT/JFace sample SWT-JFace import org.eclipse.swt.*; import org.eclipse.swt.widgets.*; public class HelloSWT { public static void main ( String [] args ) { Display display = new Display(); Shell shell = new Shell( display ); Text helloText = new Text( shell, SWT.CENTER ); helloText.setText(Hello SWT!); helloText.pack(); shell.pack(); shell.open(); while ( !shell.isDisposed() ){ if ( !display.readAndDispatch() ) display.sleep(); } display.dispose(); } } SWT-JFace Display Display类并不是可见的,它负责监管着GUI的资源并管理着和操作系统的通信。也即意味着它不光要关注着它自己的窗口是如何显示、移动和重画的,还同时要确保诸如鼠标点击、键盘敲击等事件送达小部件并去处理它们 Display类的主要任务就是负责将你的代码SWT和JFace命令翻译成底层的命令来调取操作系统。这一过程分两部分组成,并随着Display类的实例的产生而开始。首先,Display对象构建一个代表着操作系统平台的OS类的实例。这个类通过一系列被称之为原生方法的特殊Java处理过程提供了接触计算机底层资源的途径。然后像调度员一样工作 有两个在任何基于SWT的GUI中必须用到的方法,第一个

文档评论(0)

1亿VIP精品文档

相关文档