Download presentation
Presentation is loading. Please wait.
1
SWT/Jface 简介 Java GUI图形用户界面
2
What is SWT? Standard Widget Toolkit: SWT Developed on eclipse
SWT/Jface Current Version:3.3 Reference:
3
We Do GUI Right! We Do Chicken Right!
Java语言的声望和它在桌面应用程序(GUI程序)所取得的成就显然极不相符 AWT或SWING代表着无法接受的速度和怪异的界面 噩梦的终结者--SWT,从此Java GUI 也可以开发很好的图形用户界面 SWT最大化了操作系统的图形构件API,它们拥有标准的外观 We Do Chicken Right!
4
Switch(){ } Case 1:AWT AWT的算法是:使用本地库中的控件,如果本地库中没有就没办法;
好处:效率高,而且界面与本地操作系统一致; 坏处:所能实现的图形界面完全依赖于操作系统,太过局限 最早被淘汰的GUI包
5
Case 2:SWING Swing的算法是:自己实现所有控件;Swing的效果可以看JDK的DEMO(进入demo\jfc\SwingSet2,运行java -jar SwingSet2.jar),感觉可以说酷,也可以说古怪。JBuilder和NetBean的图形界面就是基于Swing的。 好处:跨平台,能实现所有的图形界面; 坏处:运行速度比较慢,而且界面风格与操作系统格格不入,这也是Java图形界面在Windows下看起来总是有点怪的原因。
6
Case 3:SWT SWT则采取折中的做法,如果本地库中有,就使用本地库的控件,本地库中没有才自己实现。 结合AWT和Swing的优点
具有稳定性能 推荐的选择
7
关于Jface Jface基于SWT 其API比SWT更加易于使用,但功能却没SWT来的直接
JFace与SWT的关系好比Microsoft的MFC与SDK的关系 可以参考eclipse的help文档
8
SWT的构成 org.eclipse.swt org.eclipse. swt.widgets swt.layout swt.events
Other… 所有可用UI组件的集合。比如Composite, Shell,Button, MenuItem等。 SWT使用的布局管理器,包括GridLayout,GridData,FillLayout等。 SWT中的事件监听类。分为Event类,Adapter类和Listener接口。 其它: dnd(Drag&Drop) Graphics等。
9
Swt.Widget -SWT的UI组件 Parent与Children
Shell,Composite,Group,Dialog(Abstract) ->FileDialog, FontDialog, MessageBox Shell使用SetVisible和Dispose方法 Button: [style] CHECK, RADIO Menu,MenuItem Label,Text,List 等等
10
Swt.Layout-SWT的布局管理器 两个概念: Layout 与 (Layout)Data
Layout:控制组件的Children位置与大小的类 (Layout)Data:与对应的Layout类相关的数据,使用setLayoutData(Object)方法 常用的Layout:GridLayout,GridData
11
Swt.Events -SWT的事件处理 搞清几个概念 SelectionEvent : 产生的事件
AddSelectionListener: 对于组件的方法 SelectionListener:接口,方法必须实现 SelectionAdapter :类,方法不必全部实现 使用起来Adapter要方便很多 同时也提供大量其它方法
12
SWT开发工具 -VisualEditior
Eclipse官方开发的eclipse插件 需下载eclipse SDK平台,和EMF,GEF,VisualEditor插件包 安装:解压到相应路径即可 VisualEditor也可支持AWT与SWING(建议请勿混用) 其它开发工具: SWT Designer,Jigloo等
Similar presentations