在Eclipse中使用SWT进行界面设计SWT是一个IBM开发的跨平台GUI开发工具包。至于为什么IBM要费劲自己另起炉灶开发一个GUI工具包,而不是使用Sun现有的由AWT, Swing, Java 2D, Java 3D等构成的Java GUI框架,那就说来话长了。(记得在一个BBS上读过一个关于SWT起源的调侃类的帖子)。1. 为什么要使用SWT? SWT是一个IBM开发的跨平台GUI开发工具包。至于为什么IBM要费劲自己另起炉灶开发一个GUI工具包,而不是使用Sun现有的由AWT, Swing, Java 2D, Java 3D等构成的Java GUI框架,那就说来话长了。(记得在一个BBS上读过一个关于SWT起源的调侃类的帖子)。 在SWT之前,Sun已经提供了一个跨平台GUI开发工具包AWT (Abstract Windowing Toolkit). 虽然AWT框架也使用的是原生窗口部件(native widgets),但是它一直未能突破LCD问题。LCD问题导致了一些主要平台特征的遗失。如果你不明白的话(其实我也没明白),换句话说,如果平台A有窗口部件(widgets)1-40,而平台B有窗口部件(widgets)20-25,那么跨平台的AWT框架只能提供这两个窗口部件集的交集。 为解决这个问题,Sun又创建了一个新的框架。这个框架不再使用原生窗口部件,而是使用仿真窗口部件(emulated widgets)。这个方法虽然解决了LCD问题,并且提供了丰富的窗口部件集,但是它也带来了新的问题。例如,Swing应用程序的界面外观不再和原生应用程序的外观相似。 虽然在JVM中这些Swing应用程序已经得到了最大程度的性能改善,但是它们还是存在着其原生对应物所不具有的性能问题。并且,Swing应用程序消耗太多的内存,这样Swing不适于一些小设备,如PDA和移动电话等。 IBM进行了尝试以彻底解决AWT和Swing框架带来的上述问题。最终,IBM创建了一个新的GUI库,这就是SWT。SWT框架通过JNI来访问原生窗口部件。如果在宿主(host)平台上无法找到一个窗口部件,SWT就会自动地模拟它。 2. SWT应用程序的组成 一个SWT应用程序的基本组成部分为显示界面(Display)、命令界面(Shell,使命令进入并使运行初始化)和窗口部件(Widgets)。Display负责管理事件循环和控制UI线程和其他线程之间的通讯。Shell是应用程序中被操作系统窗口管理器管理的窗口。每个SWT应用程序至少需要一个Display和大于等于1个的Shell实例。 图1:从不同的角度看SWT应用程序图1从不同的角度展示了SWT应用程序。左侧的图是一个简化的UI对象的继承图。中间的图展示了UI对象的容器结构(containment structure)。右侧的图则是创建后的UI外观。
在Eclipse中使用SWT进行界面设计
来源:互联网 发布日期:2016-01-14 14:17:41 浏览:1741次
相关内容
- 5.5G商用“提挡加速” A股公司争相布局抢占产业先机
- 5G 速度测试:三星 Galaxy S24 在大部分国家领先苹果 iPhone 15
- 佳讯飞鸿:已完成基于5G-R指挥调度相关产品及解决方案研发
- 5G尚未完全实现商业成功,为何还要大力迎接5G-A?
- 5.5G时代即将开启,普利特能否拿下LCP明珠?
- 华为本月底将有重磅发布,5.5G建设共识度提升,产业链迎来新机遇
- 英媒:不升反降,英国5G网速在G7垫底
- “5G+工业互联网”将迎来升级版政策,专家建议大规模推进工业企业数字化转型
- 华为5G-A实现规模组网,下载速度超过4Gbps,比5G快10倍
- 雷军回应小米没有核心技术:5G标准专利全球前十
AiLab云推荐
最新资讯
本月热点
热门排行
-
最坏时期已过,美国5G市场即将迎来回暖?
阅读量:47333
-
华为5G-A实现规模组网,下载速度超过4Gbps,比5G快10倍
阅读量:46669
-
回望2023年5G发展:释放和提升价值成最大课题
阅读量:12241
-
全球吹响5G-A商用号角
阅读量:11126
-
5.5G在欧洲突破,DNA首次将5.5G技术引入现网
阅读量:10231
-
首发新款麒麟5G芯片!曝华为nova 12系列12月26日登场
阅读量:10003
推荐内容
- 2024第三十二届中国(深圳)国际礼品及家居用品展览会(深圳礼品展)
- 2024第二十届中国(上海)国际医疗旅游展览会
- 2024年科隆东盟少儿用品展览会 (Kind+Jugen ASEAN 2024)
- 2024中国(太原)国际锂电池技术设备展览会
- 海名·2024第九届西安餐饮供应链博览会
- 2024年盐城风能展
- 2024年中国风电展业大会暨展览会
- 2024第二十三届浙江国际智能楼宇技术与智慧安防产品展览会暨浙江(杭州)国际人工智能,物联网,大数据博览会(杭州智博会)
- 2024年中国郑州食品加工及包装机械展
- IOTE 2024第二十一届中国国际物联网博览会(上海站)
- 2024年日本东京IT展Japan IT Week Spring
- 2024越南国际采矿暨设备技术展览会暨2024越南建筑工程展览会
- 2024年第28届土耳其国际电力及能源展览会 土耳其输配电机电工展览会
- 2024年第28届土耳其国际电力及能源展览会
- 2024第三十二届中国国际电子生产设备暨微电子工业展(NEPCON China)
- 2024第十四届中国西部国际物流产业博览会 第八届中国(西安)智慧交通博览会
- 第四届中国国际数字产品博览会
- 2024年俄罗斯第23届国际石油和天然气工业设备及技术展览会
- 2024年法国巴黎国际工程机械展
- 2024年俄罗斯电力电工及电气工程展览会
- 2024江苏国际工业自动化及智能装配展览会
- 2024石家庄印刷出版博览会
- 2024年第36届俄罗斯国际通信展览会
- 第36届俄罗斯国际通信展(SVIAZ 2024)
- 2024第45届中国(江西)美博会 江西中医养生理疗及大健康博览会
- 2024年德国“汉诺威工业博览会”
- 2024韩国国际机械展