第1章 嵌入式GUI简介与Qt概述
1.1 常用GUI介绍
所谓GUI(Graphics User Interface),就是指图形用户界面。图形用户界面的广泛流行是当今计算机技术的重大成就之一,它极大地方便了非专业用户的使用,人们不再需要死记硬背大量的命令,而可以通过窗口、菜单方便地操作。它的主要特征有四点:WIMP。其中,W(Windows)指窗口,是用户或系统的一个工作区域,一个屏幕上可以有多个窗口;I(Icons)指图图标,是形象化的图形标志,易于人们隐喻和理解;M(Menu)指菜单,可供用户选择的功能提示;P(Pointing Devices)指鼠标等,便于用户直接对屏幕对象进行操作。GUI采用了不少Desktop桌面办公的隐喻,让使用者共享一个直观的界面框架。由于人们熟悉办公桌的情况,因而对计算机显示的图标的含义容易理解,诸如文件夹、收件箱、画笔、工作簿、钥匙及时钟等。过去的界面不仅需要记忆大量命令,而且需要指定操作对象的位置,如行号、空格数、X及Y的坐标等。采用GUI后,用户可直接对屏幕上的对象进行操作,如拖动、删除、插入,以及放大和旋转等。用户执行操作后,屏幕能立即给出反馈信息或结果,称为所见即所得(What You See Is What You Get,WYSIWYG)。用视、点(鼠标)代替了记、击(键盘),给用户带来了方便。通常所见的GUI都是位于PC上的,但是在PC上GUI并不适合嵌入式系统。嵌入式设备有严格的资源要求(如十分有限的存储空间)。同时嵌入式系统经常有一些特殊的要求,而普通的PC上的图形窗口系统是不能满足这些要求的,比如特殊的外观效果,控制提供给用户的函数,提高装载速度,特殊的低层图形或输入设备,因此可见嵌入式系统必定要有自己的GUI。
综上所述,嵌入式GUI就是在嵌入式系统中为特定的硬件设备或环境而设计的图形用户界面系统,所以嵌入式GUI不但要具有以上有关GUI的特征,而且在实际应用中,嵌入式系统对它来说还有如下的基本要求:
● 体积小;
● 运行时耗用系统资源少;
● 上层接口与硬件无关,高度可移植;
● 高可靠性;
● 在某些应用场合应具备实时性。
UNIX环境下的图形视窗标准为X Window System,Linux是类UNIX系统,所以顶层运行的GUI系统是兼容X标准的XFree86系统。X标准大致可以划分为X Server、Graphic Library(底层绘图函数库)、Toolkits、Window Manager等几大部分,其好处是具有可扩展性、可移植性等优点,但对于嵌入式系统而言无疑太过庞大、累赘、低效。目前流行的嵌入式GUI与X思路不同,这些GUI一般不局限于X标准,更强调系统的空间和效率。
下面我们就目前市场上常用的嵌入式GUI做一个简单的介绍。