QT完全基础手册专业资料.doc
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《QT完全基础手册专业资料.doc》由会员分享,可在线阅读,更多相关《QT完全基础手册专业资料.doc(30页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、QT完全手册 嵌入式工具Qt安装与使用摘要Qt是Trolltech公司一种产品。Trolltech是挪威一家软件公司,重要开发两种产品:一种是跨平台应用程序界面框架;此外一种就是提供应做嵌入式Linux开发应用程序平台,可以应用到PDA和各种移动设备上。Qt和 Qtopia分别是其中具备代表性两个。(-05-05 10:52:14)-By lanf,出处:作者:胡利民 本文选自:开放系统世界Qt是Trolltech公司一种产品。Trolltech是挪威一家软件公司,重要开发两种产品:一种是跨平台应用程序界面框架;此外一种就是提供应做嵌入式Linux开发应用程序平台,可以应用到PDA和各种移动设
2、备上。Qt和Qtopia分别是其中具备代表性两个。 Qt是一种多平台C+图形顾客界面应用程序框架,它能给顾客提供精美图形顾客界面所需要所有元素,并且它是基于一种面向对象思想,因此顾客对其对象扩展是相称容易,并且它还支持真正组件编程。 Qt是Linux桌面环境KDE基本。笔者以为,可以说Qt与Windows下Mfc实质是同样,因此Qt最大长处在于其跨平台性,可以支持既有各种操作系统平台,重要有: MS/Windows 95、Windows 98、WindowsNT 4.0、Windows 、Windows XP; Unix/X11 Linux、Sun Solaris、HP-UX、Compaq T
3、rue64Unix、IBM AIX、SGI IRIX和诸多其他X11平台; Macintoshi Mac OSX; Embedded带FramBufferLinux平台。 下面简朴简介一下Qt/Embedded和Qtopia在Linux上安装和使用,尚有在开发过程中也许遇到某些问题。 Qt 和Qtopia安装如果需要安装一种带FramBufferQtopia平台,需要有如下软件(所列举软件以笔者使用为例): Qtopia 1.6.0; Tmake 1.11; Qt/Embedded 2.3.4(Qtopia 1.6.0是基于该开发平台上开发); Qt/Embedded 2.3.2 for X1
4、1; Qt 3.1.2 for X11。 在Trolltech公司网站上可如下载该公司所提供Qt/Embedded免费版本。 Qtopia平台安装分为如下几种环节: 1. 解包Qtopia 在Linux命令模式下运营如下命令: tar xfz qtopia-source-1.6.0 (解包)cd qtopia-source-1.6.0export QPEDIR=$PWD (设立环境变量)cd.2. 安装Tmake 在Linux命令模式下运营如下命令:tar xfz tmake-1.11.tar.gzexport TMAKEDIR=$PWD/tmake-1.11export TMAKEPATH=
5、$TMAKEDIR/lib/qws/linux-x86-g+export PATH=$TMAKEDIR/bin:$PATH3. 安装Qt/Embedded2.3.4 在Linux命令模式下运营如下命令:tar xfz qt-embedded-2.3.4-commercial.tar.gzcd qt-2.3.4export QTDIR=$PWDexport QTEDIR=$QTDIRexport PATH=$QTDIR/bin:$PATHexport LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATHcp $QPEDIR/src/qt/qconfig-qpe.
6、h src/tools/. /configure -qconfig qpe -qvfb -depths 4,8,16,32make sub-srccd .也可以在configure参数中添加systemjpeg和gif,使Qtopia平台能支持jpeg、gif格式图形。 4. 安装Qt/X11 2.3.2 在Linux命令模式下运营如下命令:tar xfz qt-x11-2.3.2-commercial.tar.gzcd qt-2.3.2export QTDIR=$PWDexport PATH=$QTDIR/bin:$PATHexport LD_LIBRARY_PATH=$QTDIR/lib:
7、$LD_LIBRARY_PATH. /configure -no-openglmakemake -C tools/qvfbmv tools/qvfb/qvfb bincp bin/uic $QTEDIR/bincd .依照开发者自身开发环境,也可以在configure参数中添加别参数,例如-no-opengl或-no-xfs,可以键入./configure -help来获得某些协助信息。 5. 安装Qt/X11 3.1.2 在Linux命令模式下运营如下命令: tar xfz qt-x11-commercial-3.1.x.tar.gzcd qt-x11-commercial-3.1.xexp
8、ort QTDIR=$PWDexport QT3DIR=$QTDIRexport PATH=$QTDIR/bin:$PATHexport LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH./configure -threadmakecd .6. 安装Qtopia 在Linux命令模式下运营如下命令: cd qtopia-source-1.6.xexport QTDIR=$QTEDIRexport QPEDIR=$PWDexport PATH=$QPEDIR/bin:$PATHcd src./configuremakecd ./.7. 安装Qtopia桌面
9、cd qtopia-source-1.6.x/srcexport QTDIR=$QT3DIR./configure -qtopiadesktopmakemv qtopiadesktop/bin/qtopiadesktop ./bincd .Qt和Qt Designer使用 依照上面环节安装完毕了Qt/Embedded和Qtopia之后,就可以运营这些程序了。 运营Qt虚拟仿真窗口:在Linux图形模式下运营命令qvfb&;Qtopia只是一种用Qt/Embedded开发程序,运营Qtopia,在图形模式下运营命令: export QTDIR=$QTEDIR,qpe &;这样Qtopia程序就运
10、营在QVFB上,即Qt虚拟仿真窗口。 Qt/Embedded是针对嵌入式Linux而开发一种开发工具,Qt封装了某些惯用类,并且这些类名字都以Q字开头命名,如QString、QDialog等。这里重要简介一下如何运用Qt Designer来设计组件,并生成相应代码。 在Qt中,把组件分为复合体、原始体和配件。而在Qt中,组件是由某些抽象类、复杂组件类、管理组件几何特性类等构成。 Qt中有三个重要基类:QObject、Qapplication和QWidget。 在Qt 中编程,运用Signal和Slot进行对象之间通信是Qt重要特性。它与Windows中消息机制非常类似,但是Signal和Slo
11、t机制真正实现了一种消息封装。当对象状态变化时,发出Signal,告知所有Slot接受Signal,尽管它不懂得哪些函数是Slot,Slot一开始也不懂得哪些Signal可以接受。Signal和Slot之间不是一一相应关系,一种Signal可以发给各种Slot, Slot也可以接受各种Signal。Slot除了可以接受Signal以外,与其他成员函数没有区别。这种机制比使用回调函数要灵活,但是会减慢程序运营速度。但是在当前高速CPU面前,这种损失是无足轻重,并且它还能保证程序简要性和灵活性,非常便利。 在Qt组件中,不但定义了惯用成员变量和成员函数,还定义了所有与该组件有关Signal和Slo
12、t。 要将组件组合起来,最简朴办法就是使用Qt Designer。一方面要启动Qt Designer,在Linux命令模式下,键入如下命令(假设Qt安装在/usr/local下): cd qt-2.3.2/bin./designer这样就可以启动一种与Windows下Delphi相类似如图1界面。 然后新建一种QFrame,将自己需要组件直接拖拉到这个Frame中,相信诸多人均有过这样经历,此处就不再详细描述了。完毕之后存盘时,会将这个新组件保存为一种扩展名为.ui文献。假设所存文献名为test.ui,用vi test.ui来查看这个文献,发现这是一种用xml语言写一种文本。下面用这个test
13、.ui生成相应test.h和test.cpp。同样还是在这个目录下,可以看到一种uic工具,这个是Qt专门用来将ui文献生成.h和.cpp文献,在终端模式下键入如下命令: ./uic -o test.h test.ui./uic -o test.h -i test.cpp test.ui此时就能看到生成了相应test.h和test.cpp,这是一种类。固然这只是某些表面东西,还需要在这些代码中添加相应Signal和Slot,完毕所需要操作。值得注意是,相应版本生成ui最佳用相应版本uic来生成代码。如果用Qt 3.1.2Designer生成ui,用Qt 2.3.2uic来生成代码,生成代码都会
14、是某些空函数。 在普通开发过程中,一方面通过这个ui生成一种类,在Qt中普通叫做 Base,如上面例子,叫做testBase;然后再新建一种类,来继承这个Base。普通叫做实现类Impl,如testImpl。在这个实现类里面定义所需要成员函数、Signal和Slot,由于ui也许是经常需要改动。如果这样做,每次只需要在Designer中修改ui,而不用去理睬这些成员函数、Signal和Slot了。 编译一种Qt程序必然需要Makefile,在Qt中提供了一种专门生成Makefile工具,就是tmake。用tmake需要依照编写程序写一种.pro文献。.pro文献非常简朴,有固定格式,下面是一种
15、例子: TEMPLATE = appCONFIG = qtopia warn_on releaseMOC_DIR =tmpOBJECTS_DIR =tmpHEADERS =fcrs.h structs.h globalfunc.h globalvars.h testimpl.hSOURCES = main.cpp globalfunc.cppglobalvars.cpp testimpl.cppINTERFACES = test.ui TARGET = fcrs生成这个.pro文献之后,在终端中键入下面命令: tmake -o Makefile test.pro就自动生成了一种Makefile
16、,使用这个Makefile编译所编写程序就可以了。Qt/Embedded开发环境建立过程 -Qt/Embedded开发环境建立过程:(这些软件可以免费从trolltechWEB或FTP服务器上下载) tmake 1.11 或更高版本; (生成Qt/Embedded应用工程Makefile文献) Qt/Embedded 2.3.7 (Qt/Embedded 安装包) Qt 2.3.2 for X11; (QtX11版安装包,它将产生x11开发环境所需要两个工具)1、安装tmake在Linux 命令模式下运营如下命令:tar xfz tmake-1.11.tar.gzexport TMAKEDIR
17、=$PWD/tmake-1.11export TMAKEPATH=$TMAKEDIR/lib/qws/linux-x86-g+export PATH=$TMAKEDIR/bin:$PATH2. 安装Qt/Embedded 2.3.7在Linux 命令模式下运营如下命令:tar xfz qt-embedded-2.3.7.tar.gzcd qt-2.3.7export QTDIR=$PWDexport QTEDIR=$QTDIRexport PATH=$QTDIR/bin:$PATHexport LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH./confi
18、gure -qconfig -qvfb -depths 4,8,16,32make sub-srccd .上述命令 ./configure -qconfig -qvfb -depths 4,8,16,32 指定Qt 嵌入式开发包生成虚拟缓冲帧工具qvfb,并支持4,8,16,32 位显示颜色深度。此外咱们也可以在configure 参数中添加systemjpeg 和gif,使Qt/Embedded 平台能支持jpeg、gif格式图形。上述命令 make sub-src 指定按精简方式编译开发包,也就是说有些Qt 类未被编译。Qt 嵌入式开发包有5 种编译范畴选项,使用这些选项,可控制Qt 生成
19、库文献大小,但是您应用所使用到某些Qt 类将也许因而在Qt 库中找不到链接。编译选项具体用法可运营./configure help 命令查看。3. 安装Qt/X11 2.3.2在Linux 命令模式下运营如下命令:tar xfz qt-x11-2.3.2.tar.gzcd qt-2.3.2export QTDIR=$PWDexport PATH=$QTDIR/bin:$PATHexport LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH./configure -no-openglmakemake -C tools/qvfbmv tools/qvfb/qv
20、fb bincp bin/uic $QTEDIR/bincd .依照开发者自身开发环境,也可以在configure 参数中添加别参数,例如-no-opengl 或-no-xfs,可以键入./configure -help 来获得某些协助信息。如果Qt/Embedded 应用是在UNIX 平台下开发话,那么它就可以在开发机器上以一种独立控制台或者虚拟缓冲帧方式来运营,对于后者来说,其实是有一种X11应用程序虚拟了一种缓冲帧。通过指定显示设备宽度,高度和颜色深度,虚拟出来缓冲帧将和物理显示设备在每个像素上保持一致。这样每次调试应用时开发人员就不用总是刷新嵌入式设备FLASH 存储空间,从而加速了应
21、用编译、链接和运营周期。运营Qt 虚拟缓冲帧工具办法是:在Linux 图形模式下运营命令:qvfb (回车)当Qt 嵌入式应用程序要把显示成果输出到虚拟缓冲帧时,咱们在命令行运营这个程序时,在程序名后加上-qws 选项。例如: $ hello -qws 一,QT/E安装。在本机中安装了涉及QT4.0.1(WINDOWS版本)以及QT/E2。3。7(LINUX版本)。QT/E我安装在我虚拟机中。由于QT/E2.3.7版本问题,其适当在REDHAT9。0版本(或更低版本)下安装,否则安装不成功。QT/E安装过程复杂,详细细节可以参照下面这篇文章。Qt/Embedded开发环境建立过程此文在网上可搜
22、索到。本机下虚拟机中QT/E安装途径为:/home/wangxl/QTE/qt-2.3.7QT/X11安装途径为:/home/wangxl/QTE/qt-2.3.2Tmake安装途径为:/home/wangxl/QTE/Tmake-1.8QT/E下载地址为:ftp:/ftp.rediris.es/mirror/Qt/source/Tmake下载地址为:ftp:/二QT与QT/E以及QT3与QT4之间区别相对来说QT与QT/E语法同样,所不同之处在库类大小或者库类函数大小不同而已。QT/E相对于QT来说,不具备少数类或者少数函数支持。详细QT/E与否包括某个类或者包括某个类中函数,我办法是在QT
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- QT 完全 基础 手册 专业 资料
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内