毕业论文论文范文课程设计实践报告法律论文英语论文教学论文医学论文农学论文艺术论文行政论文管理论文计算机安全
您现在的位置: 毕业论文 >> 计算机安全 >> 正文

基于QT的GUI设计 第3页

更新时间:2014-6-28:  来源:毕业论文

基于QT的GUI设计 第3页
根据上表,需要的硬件模块在UP-TECHPXA270-S硬件实验平台上已一应俱全。音视频模块,对音视频输入输出功能都有着很好的支持;存储卡模块支持SD/MMC卡;USB主从接口模块支持U盘读取功能;蓝牙模块支持与外部蓝牙设备间的通讯等等。各种各样的接口便于我们扩展设计开发,当然这为“多媒体播放器”在插槽功能,音视频输出功能,USB通讯功能等方面提供了很好的硬件条件。在此平台上还配制了8英寸的TFT真彩液晶屏,可模拟的充当此次项目“多媒体播放器”的用户交互平台,支持640*480的分辨率。UP-TECHPXA270-S在存储系统方面也有着很高的配置,内置了高性能价格比的NAND FLASH 64M内存,支持大容量的用户差异图形图片和媒体文件的存储。
CPU的能力当然是毋庸置疑的,Intel Xscale结构芯片的PXA270在各方面都表现了很强悍的能力,在目前市场上来说也是一款很先进的处理器芯片。PXA270处理器是Intel公司目前性能最为强劲的移动处理器,已经成为高端移动设备中最受欢迎的处理器之一。PXA270最高主频可达624MHz,它引入了X86架构奔腾4系列上的多媒体技术——MMX技术,能够大大提升多媒体处理能力,用户通过该技术可以在VGA上面播放高质量的MPGE4视频;同时加入了Intel SpeedStep动态电源管理技术,在保证CPU性能的情况下,最大限度地降低移动设备功耗。
1.4 本章小结
本章主要介绍本项目的选题背景、意义,选题目标和项目需求分析,根据产品市场和本人技术水平情况,按需求划分软件功能模块,还根据软件功能和现有资源的性能对硬件需求做了详细分析。
2  QT4的GUI简介
2.1 QT的背景介绍
Qt/Embedded 是著名的Qt库开发商Trolltech公司开发的面向嵌入式系统的Qt版本,开发人员多为KDE项目的核心开发人员。许多基于Qt的X Window程序可以非常方便地移植到Qt/Embedded上,与X11版本的Qt在最大程度上接口兼容,延续了在X上的强大功能,在底层彻底摒弃了X lib,仅采用framebuffer作为底层图形接口。Qt/Embedded类库完全采用C++封装。丰富的控件资源和较好的可移植性是Qt/Embedded最为优秀的一方面,使用X下的开发工具Qt Designer可以直接开发基于Qt/Embedded的UI(用户操作接口)界面。越来越多的第三方软件公司也开始采用Qt/Embedded开发嵌入式Linux下的应用软件。
2.2 QT实现的结构原理
Qt/Embedded是Trolltech公司开发的面向嵌入式系统的Qt版本,与X11版本的Qt在最大程度上接口兼容,采用帧缓存(framebuffer)作为底层图形接口。Qt/Embedded类库完全采用C++封装,并且有着丰富的控件资源以及较好的可移植性,大范围的Qt/Embedded API可用于多种开发项目。Qt/Embedded的实现结构如下:
图2-1  QT的实现结构图
Qt/Embedded 的底层图形引擎基于framebuffer。Framebuffer是在Linux内核架构版本2.2以后推出的标准显示设备驱动接口。Framebuffer 驱动程序的实现分为两个方面:一方面是对LCD及其相关部分的初始化,包括画在缓冲区的创建和对DMA通道的设置;另外一方面是对画面缓冲区的读写,具体到代码为read、write、lseek等系统调用接口。至于将画面缓冲区的内容输出到LCD显示屏上,则由硬件自动完成。对于软件来说是透明的。当对于DMA通道和画面缓冲区设置完成后,DMA开始正常工作,并将缓冲区中的内容不断发送到LCD上。这个过程是基于DMA对于LCD的不断刷新的。基于该特性,framebuffer驱动程序必须将画面缓冲区的存储空间(物理空间)重新映射到一个不加高缓存和写缓存的虚拟地址区间中,这样能才保证应用程序通过mmap将该缓存映射到用户空间后,对于该画面缓存的写操作能够实时的体现在LCD上。
QT程序是基于C++编写的,图形用户界面编程同时需要运行效率和高水平的灵活性。Qt通过结合C++的速度为这一领域提供了Qt对象模型。
Qt把下面这些特性添加到了C++当中:
一种被称为信号和槽的非常强大的机制;可查询和可设计的属性项;强大的事件和事件过滤器;根据上下文进行国际化的字符串翻译;完善的时间间隔驱动的计时器等。
许多Qt的特性是基于QObject的继承,通过标准C++技术实现的。
QApplication是必须构造的Qt主对象,需要在一开始的时候就构造这个对象,并把命令行参数传递给这个对象,每个Qt应用程序有且仅有一个QApplication对象,该对象必须在做其他事之前创建,这个对象处理一些底层操作,如事件处理、字符串本地化和控制界面外观等。
信号和信号处理函数是GUI应用程序用来响应用户输入的基本机制,也是所有GUI库的核心特征,Qt的信号处理机制由信号(signal)和槽(slot)构成,它们相当于GTK+中的信号和回调函数。在Qt中回调函数就叫做槽。
信号和槽用于对象间的通讯,它的基本语法为:
 connect(object1,signal1,object2,slot1);
2.3 QT应用程序的实现
由以上简介可知,Qt是一个创建GUI程序的C++类库,编写Qt应用程序的主要工作是基于已有的Qt类编写用户类。
Qt提供了一组范围相当广泛的C++类库,并包含了几种命令行和图形界面的工具,有效地使用这些工具可以加速开发过程。
Qt Designer:Qt设计器。用来可视化地设计应用程序界面。
Qt Linguist:Qt语言学家。用来翻译应用程序。以此提供对多种语言的支持。
Qmake:使用此工具可以由简单的、与平台无关的工程文件来生成编译所需的Makefile。
Qt Assistant:关于Qt的帮助文件。类似于MSDN。可以快速地发现你所需要的帮助。
moc:元对象编译器。
uic:用户界面编译器。在程序编译时被自动调用,通过ui_*.h文件生成应用程序界面。
Qt应用程序的设计使用基于工程的方法,并通过.pro文件进行工程管理。实现应用程序的第一步是编写.pro文件,然后使用QT4自带的qmake工具生成Makefile,最后进行源代码的编译。
Qmake的过程如下:
qmake –project   //生成.pro的工程文件
qmake          //生成Makefile
make           //编译
2.4 本章小结
随着越来越多的第三方软件公司利用Qt/Embedded开发嵌入式Linux下的应用软件,Qt的应用已经越来越广泛。本章主要介绍了QT的背景和描述了QT实现的结构原理,还简述了QT的相关特性。此外,也介绍了QT应用程序开发时的相关工具。
3  系统框架描述
3.1 系统模块
系统OS层使用嵌入式Linux系统,底层调用多种驱动,其中包括:USB键盘、鼠标驱动,网卡驱动,蓝牙驱动,触摸屏驱动等。软件层API使用QT4自由版提供的API。应用层包括辣大模块,每个模块有各自的GUI界面。图3-1  系统模块图

上一页  [1] [2] [3] [4] [5] [6] [7] [8] [9] [10]  ... 下一页  >> 

基于QT的GUI设计 第3页下载如图片无法显示或论文不完整,请联系qq752018766
设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©751com.cn 辣文论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。