要用JAVA开发GUISWTJfaceRCP有什么联系?什么关系。

  具体用了一下,新建画面的时候,swt,jface,rcp出现了,每个都有各自的画面。有很大区别吗?

  展开全部首先你要明白,eclipse本身就是基于SWT的。SWT是eclipse公司发布的一个GUI编程框架,即是说,这个是最基本的开发工具。JFace是对SWT的一个封装,它丰富、优化了SWT的功能。RCP呢,就是Rich Client Platform,它相当于一个组件的集合。你可以用它来定制你自己的eclipse产品。

  SWT和JFace基本不分家的,在开发同一个界面的时候,尽量使用JFace的功能,JFace实现不来的时候就用SWT。

  RCP是一个开发的方向(类似web也是一个开发方向一样),目前应用国内相对少,不过学精通还是很有前景的。你要学RCP,SWT和JFace都是它的基础。

  展开全部jsf是表示层的框架,主要是web界面方面的应用;而其他的都属于桌面UI库,与前者不同,在此不做比较。AWT是java早期版本使用的UI库,为了跨平台,它指提供各个平台上支持的组件的最大公约数集合..比如苹果操作系统并不支持按钮的图片展示,于是AWT的按钮是无法使用图片的;AWT的实现是以本机对等体的方式来实现的,即一个Button对象则对应于本机一个窗口组件(利用本地程序实现映射),于是AWT组件与本地组件长得是一模一样的。SWING则是基于AWT的基础上做了许多扩展,它提供的是各种平台上支持的组件的最小公倍数集合..在设计上使用了MVC(分UI、Component、Model),除了窗口之外,其大部分组件都使用Java2D来实现渲染模拟,也因为如此,Swing在渲染方面的灵活性非常大。SWT是IBM公司针对Java桌面UI开发出来的另一个分支,它的实现方式与AWT类似,都使用了本机对等体的实现,于是它的组件也与本机组件非常雷同;此外它遵循最小公倍数原则,对于非公共组件部分,它又使用了类似Draw2D库的API来模拟渲染。JFace是SWT的增强包,它是对SWT的进一步封装,使得SWT界面开发的模块划分更加清晰,代码也更加维护。综上,在渲染的灵活性上面,swing是最优的,因为它的渲染可在java程序中实现(MVC),而AWT和SWT则因为本机对等体的缘故不是那么灵活;在内存占用上面,AWT和SWT比swing要少得多,而且也响应也要快一些,这是因为Swing将组件的渲染信息(甚至是像素信息)都放在程序内存中,并由自己管理,所以Swing界面响应很慢是不足为怪的~~;在支持的组件集合上,SWT和Swing比AWT丰富得多;最后,在稳定性上面,SWT稍显不足~~

  上面的几种UI库中,Swing和SWT都占据一定的份额吧,Swing在一些报表图形展示方面有更好的灵活性,也有比较好的开源组件支持(如JFreeChart);而SWT在快速应用开发方面是非常合适的,Eclipse界面便是SWT的实现,而也基于此出现了Eclipse RCP技术(类似于MFC),该技术整合了SWT

TAG标签: java swt做表格
Ctrl+D 将本页面保存为书签,全面了解最新资讯,方便快捷。