Linux课件 gui编程

Linux课件 gui编程

ID:44268713

大小:414.00 KB

页数:52页

时间:2019-10-20

Linux课件 gui编程_第1页
Linux课件 gui编程_第2页
Linux课件 gui编程_第3页
Linux课件 gui编程_第4页
Linux课件 gui编程_第5页
资源描述:

《Linux课件 gui编程》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、图形编程1本章的主要内容:(1)GUI简介(2)Qt编程介绍2一、GUI介绍1)Linux图形领域的基础设施1.1XWindow这一系统是目前类UNIX系统中处于控制地位的桌面图形系统。X-Window系统、X-Window、或简称X,都是指的Linux的图形用户界面。X最初是由MIT开发的。在Linux上,X-Window是作为独立的程序运行于用户空间。这个系统是使用的客户机/服务器模型,其模型如图1所示。3图1xwindows的客户机/服务器模型41.2SVGALibSVGALib是Linux系统中最早出现的非X图形支持库。

2、1.3FrameBufferFrameBuffer是出现在2.2.xx内核当中的一种驱动程序接口。这种接口将显示设备抽象为帧缓冲区。用户可以将它看成是显示内存的一个映像,将其映射到进程地址空间之后,就可以直接进行读写操作,而写操作可以立即反应在屏幕上。1.4LibGGILibGGI试图建立一个一般性的图形接口,而这个抽象接口连同相关的输入(鼠标、键盘、游戏杆等)抽象接口一起,可以方便地运行在XWindow、SVGALib、FrameBuffer等等之上。但不知何故,LibGGI的发展几乎停滞。52)Linux图形领域的高级函数库

3、2.1Xlib及其他相关函数库在XWindow系统中进行图形编程时,可以选择直接使用Xlib。Xlib实际是对底层X协议的封装,可通过该函数库进行一般的图形输出。对一般用户而言,由于Xlib的接口太原始而且复杂,因此一般的图形程序选择其他高级一些的图形库作为基础。比如,GTK、QT等等。2.2SDL(SimpleDirectMediaLayer)SDL(SimpleDirectMediaLayer)是一个跨平台的多媒体游戏支持库。其中包含了对图形、声音、游戏杆、线程等等的支持,目前可以运行在许多平台上,其中包括XWindow、X

4、WindowwithDGA、LinuxFrameBuffer控制台、LinuxSVGALib,以及WindowsDirectX、BeOS等等。因为SDL专门为游戏和多媒体应用而设计开发,所以它对图形的支持非常优秀,尤其是高级图形能力。可以说,SDL是编写跨平台游戏和多媒体应用的最佳平台,也的确得到了广泛应用。相关信息,可参阅http://www.libsdl.org。62.3AllegroAllegro是一个专门为x86平台设计的游戏图形库。最初的Allegro运行在DOS环境下,而目前可运行在LinuxFrameBuffe控制

5、台、LinuxSVGALib、XWindow等系统上。有关Allegro的进一步信息,可参阅http://www.allegro.cc/2.4Mesa3DMesa3D是一个兼容OpenGL规范的开放源码函数库,是目前Linux上提供专业三维图形支持的惟一选择。Mesa3D同时也是一个跨平台的函数库,能够运行在XWindow、XWindowwithDGA、BeOS、LinuxSVGALib等平台上。有关Mesa3D的进一步信息,可参阅http://www.mesa3d.org/。2.5DirectFBDirectFB是专注于Lin

6、uxFrameBuffer加速的一个图形库,并试图建立一个兼容GTK的嵌入式GUI系统。它以可装载函数库的形势提供对加速FrameBuffer驱动程序的支持。目前,该函数库正在开发之中(最新版本0.9.97),详情可见http://www.directfb.org/。73)面向嵌入式Linux系统的图形用户界面3.1MicoroWindows/NanoXMicroWindows(http://microwindows.censoft.com)是一个开放源码的项目,目前由美国CenturySoftware公司主持开发。MicroW

7、indows是一个基于典型客户/服务器体系结构的GUI系统,基本分为三层。最底层是面向图形输出和键盘、鼠标或触摸屏的驱动程序;中间层提供底层硬件的抽象接口,并进行窗口管理;最高层分别提供兼容于XWindow和WindowsCE(Win32子集)的API。3.2OpenGUIOpenGUI(http://www.tutok.sk/fastgl/)在Linux系统上存在已经很长时间了。最初的名字叫FastGL,只支持256色的线性显存模式,但目前也支持其他显示模式,并且支持多种操作系统平台,比如MS-DOS、QNX和Linux等等,

8、不过目前只支持x86硬件平台。OpenGUI也分为三层。最低层是由汇编编写的快速图形引擎;中间层提供了图形绘制API,包括线条、矩形、圆弧等,并且兼容于Borland的BGIAPI。第三层用C++编写,提供了完整的GUI对象集。83.3Qt/EmbeddedQt

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。