- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PAGE 1
PAGE 1
几种常用的嵌入式Linux GUI及其特点
随着Internet与网络的快速发展并向家庭领域不断扩展,使消费电子、计算机、通信(3C)一体化趋势日趋明显,嵌入式系统再度成为研究与应用的热点。 随着Internet与网络的快速发展并向家庭领域不断扩展,使消费电子、计算机、通信(3C)一体化趋势日趋明显,嵌入式系统再度成为研究与应用的热点。嵌入式实时Linux操作系统以价格低廉、功能强大又易于移植而正在被广泛采用,成为新兴的力气,如今随着WAP手机、PDA、机顶盒、及DVD/VCD播放机已经快速普及,用户对这些手持式设备的GUI提出了更高的要求,期望能看到像PC机才拥有的华丽美观的GUI。GUI已经成为了人与机器沟通的桥梁,嵌入式系统对GUI的需求越来越高,而这一切均要求有一个轻型、占用资源少、高性能、高牢靠、可配置及美观的GUI支持。 1Java的图形界面工具 Java技术对于服务器,个人电脑和嵌入式系统来说是一项伟大的技术。由于其具有跨平台等特性。Java在服务器和桌面电脑方面的应用是特别成功的。然而在GUI方面,Java只用特别有限的一些特征去构建图形用户界面。其思想就是采用平台无关的Java应用程序接口打包到不同的操作系统来开发本地图形用户界面,被称之为抽象的窗口工具(AWT)。仅有平凡的部件如文件域、文本区、选择框、单选按钮、列表框和按钮被AWT支持,图形和图像的特性支持特别有限,也就是说,只足够构建简洁的applet程序。熟悉到需要更高级的图形用户界面组件和图形能力,Sun公司开发了Swing,Java2D,Java3D,图像的输入/输出,以及Java高级图像(JAI)。Swing是用来构建Java图形界面的标准API(应用程序接口),一些AWT类由Swing基础而来。它有一套完全的组件从按钮到文件域、表格、树型和文件编辑器。这些组件不依靠于操作系统本地的部件,而是用原始的图形像直线、矩形、文字画出。这种画代表感观插件,它能够模仿本地的感观。SWT是基于Java开发的,它的设计理念是最大化了操作系统的图形构件的API,就是说只要操作系统供应了相应图形的构件,那么SWT只是简洁应用JNI技术调用它们,只有那些操作系统中不供应的构件,SWT才自己去做一个模拟的实现。另外SWT还供应对操作系统本地图形用户界面的直接访问,因此,基于SWT的Java应用程序拥有本地的图形用户界面并且可以和本地别的应用程序和部件集成在一起。使用SWT开发包,简洁、跨平台、牢靠等这些Jaya语言本身所具有的优点正慢慢融合到图形界面的应用程序开发中去。Java语言的另一扇成功之门正在渐渐打开。 图1SWT+GtkFB图形系统的体系结构 2SWT+GtkFB图形系统的体系结构 2.1SWT+GtkFB图形系统的体系结构 2.1.1SWT SWT处于体系机构的最上层,它与Java内的AwT和Swing同属于设计图形界面所需的高级函数库。而且SWT针对AWT以及Swing的一些问题作了改善,如今它已发展成一套与作业系统无关的图形元件函数库。在元件的产生方面采用了适当的模拟,在基本的元件方面是采用原有作业系统的,对于较复杂的元件才用仿真的技术。基于SWT的Java应用程序拥有本地的图形用户界面,并且可以和本地别的应用程序,以及部件集成在一起。 SWT是基于Java语言开发出来的高级图形元件库,如图2所示SWT在Java端通过JNI(JavaNativeInteRFace)技术直接调用native端的GtkFB来使用操作系统的资源,JNI技术使得SWT程序可以与其他语言编写的Native端的代码相互协作,将它们整合在一起;另一方面可使运行在JVM(JAava虚拟机)中的SWT代码调用GtkFB库函数或其他程序;此外利用InvocatiONAPI,可将Java虚拟机嵌入到native端的应用中。JNI这个接口是双向的,相当于桥梁和纽带,它将SWT代码和native端的GtkFB代码连接起来。 图2SWT通过JNI调用GtkFB 2.1.2Gtk库 如图1所示,GTK会用到几个连接库,如基本数据类型用的Glib库,它是由基础类、核心应用支持类、实用功能类、数据类和对象系统类五个部分组成的。 Pango是用于国际化文本的布局和显示的全功能框架。Pango可以处理以非从左到右方向排列的文本,并且可以简单地管理复杂语言,甚至还可以处理依据使用环境而采用不同形式的信函。例如它支持双向文本,用户可以将从左到右的文本和从右到左的文本混合编排;还可有用于确定各种复杂文本(如阿拉伯
您可能关注的文档
最近下载
- 2025贵州黔东南州凯里市选聘城市社区工作者150人笔试模拟试题及答案解析.docx VIP
- 2024年秋季新人教版七年级上册英语全册教案.docx
- 迎河东路赶工措施方案.doc VIP
- AVEVA Marine 船舶生产设计培训中文材料 (电缆托架).pdf VIP
- DB36 T 853-2015 水利枢纽库区抬田工程技术规范.docx VIP
- 3.表现性色彩的应用(课件)-2024冀美版美术六年级上册 .pptx
- AVEVA Marine 船舶生产设计培训中文材料 (电缆设计).pdf VIP
- TCFPA 038—2024消防安全评估通则.pdf
- 2025-2026学年初中信息技术浙教版2023七年级下册-浙教版2023教学设计合集.docx
- 吉林省长春市德惠市第三中学2024-2025学年七年级上学期语文9月月考试卷(含答案).docx VIP
文档评论(0)