第二章 Qt常用工具的介绍
第二章 Qt常用工具的介绍
(1)No.1 qmake
相信编写过Makefile的开发人员,随着工程中源码的级数递增和以类型、功能、模块组织源码的子目录的增多,都不愿意重复机械地手工编写这个工程管理文件。手写Makefile比较困难也容易出错。还没有编写过Makefile,甚至还不知道Makefile为何物的开发人员,也不用为此烦心,qmake可以方便地基于一个工程文件,生成不同平台下的Makefile。qmake关注编译器和处理器平台的依赖性,开发人员不用再手写针对不同编译器和不同处理器平台的Makefile,而可以花更多的精力在程序的设计上。
(2)No.2 designer
Qt的界面设计师,它是一个所见即所得的界面绘制工具。通过这个工具我们可以在后面的操作中方便地通过鼠标的拖曳来布局和设计软件界面。
(3)No.3 assistant
它是一个提供了400多种图形化用户界面的宏大的C++类库。如果没有良好的帮助文件和在线文档阅读器对于开发人员来说是多么糟糕的一件事情呀,然而,Qt assistant工具的出现,避免了这种糟糕事情发生在Qt开发人员身上。它做的还远远不只这些,当使用assistant的时候,会发现它考虑的非常周到,可以通过类似web浏览器导航、书签和文档文件链接,还提供关键字查询服务;当开发人员需要向最终用户提供文档支持得到时候,它又是完全可定制的。
(4)No.4 uic
用户接口编译器,在designer里面绘制的软件界面可以靠这个工具生成对应的实现源码文件。它一般不需要手动执行,而是在Makefile中制定调用规则。
(5)No.5 Moc(meta-object compiler)
元对象编译器。看到编译器很容易想到gcc、g++这些Linux下常用的编译器,既然Qt包含了C++类库,用g++编译Qt程序就成了顺理成章的事情了。然而,Qt对标准C++提供了扩展,这些扩展的内容包含了后面要讲到的对象间的通信机制(信号与槽),这些是Qt特有的,用g++是无法进行语法解释的。这就需要我们的moc站出来做个中间人,把Qt的这些特殊代码翻译成C++标准语法代码,然后把翻译后的代码交给g++进行编译链接,生成最终目标。
在这里补充说明下Qt在Linux下支持的模块(组件),如下表所列:
| 模块名 | 模块说明 |
| QtCore | 非图形化核心类,它里面涵盖的类(QThread,QChar等)可以供其他模块使用,头文件 |
| QtGui | 图形化用户界面类,它涵盖了Qt下面所有的界面控件(对话框,按钮等),头文件 |
| Phonon | 多媒体框架 |
| Qt3Support | Qt3的兼容类,提供了由Qt3程序向Qt4程序移植的类库 |
| QtDBus | 采用D-Bus总线进行进程间通讯的类,该模块仅在UNIX中用 |
| QtDesigner | 扩展Qt Designer的类 |
| QtHelp | 提供在线帮助的类 |
| QtMultimedia | 提供底层多媒体编程的类(QAudioInput,QAudio),头文件 |
| QtNetWork | 提供让用户轻松便捷构建网络程序的类(QFtp,QTcpServer等),头文件 |
| QtOpenGL | 提供2D/3D图像处理接口,头文件 |
| QtSql |
Qt操作SQL数据库的类 |
| QtSvg | 显示和创建SVG文件的类 |
| QtWebKit | 提供一个Web浏览器引擎来和Web内容进行交互,头文件 |
| QtXml | 处理XML的类 |
| QtXmlPatterns | 用于XML和定制数据模型的XQuery、XSLT和XPath引擎 |
| QtScript | Qt的脚本引擎 |
第二章 Qt常用工具的介绍的更多相关文章
- 第二章 psql客户端工具
第二章 psql客户端工具 pgAdmin是一款功能丰富.开源免费的PostgreSQL图形化工具.psql是PostgreSQL自带的命令行工具,功能全面,是PostgreSQL数据库工程师必须熟练 ...
- Android群英传》读书笔记 (1) 第一章 Android体系与系统架构 + 第二章 Android开发工具新接触
第一章 Android体系与系统架构 1.Dalvik 和 ARTDalvik好比是一辆可折叠的自行车,平时是折叠的,只有骑的时候,才需要组装起来用.ART好比是一辆组装好了的自行车,装好就可以骑了. ...
- 第二章排错的工具:调试器Windbg(上)
感谢博主 http://book.51cto.com/art/200711/59731.htm <Windows用户态程序高效排错>第二章主要介绍用户态调试相关的知识和工具.本文主要讲了排 ...
- 第二章排错的工具:调试器Windbg(下)
感谢博主 http://book.51cto.com/art/200711/59874.htm 2.2 读懂机器的语言:汇编,CPU执行指令的最小单元2.2.1 需要用汇编来排错的常见情况 汇编是 ...
- spring中常用工具类介绍
http://www.cnblogs.com/langtianya/p/3875103.html 文件资源操作 Spring 定义了一个 org.springframework.core.io ...
- iOS性能检测之Instrunments - 几种常用工具简单介绍
Instrunments: 没错,就是这货,很多人平时开发可能不一定会用到这个,但我要说的是,学会使用它,会让你加分不少哦 先来一张全家福: 1.打开方式 或者 两种方式都行. 2.今天主要介绍一下 ...
- Linux第二章-Linux常用命令
一.Linux常用快捷键 快捷键 作用 Tab 补全文件名或者路径 Ctrl + L 清除屏幕,然后,在最上面重新显示目前光标所在的这一行的内容. Ctrl + C 终止当前进程 Ctrl + D 注 ...
- 第二章 函数编程&常用标准库
函数编程&常用标准库 ...
- 第二章 FFmpeg常用命令
2.1 FFmpeg常见的命令大概分为6个部分 ffmpeg信息查询部分 公共操作参数部分 文件主要操作参数部分 视频操作参数部分 字幕操作参数部分 2.1.1 FFmpeg的封装转换 FFmpeg ...
随机推荐
- EntityFramework 连接数据库出错
本文转载:http://www.cnblogs.com/shuang121/archive/2012/03/19/2406121.html 总结:选择“是”时,连接字符串的密码会暴露出来,“否”的时候 ...
- 复制带有random指针的单链表
如图1所示,有一条单链表,其节点除了有next指针外,还有一个random指针.random指针可指向单链表中的任意节点,包括它自身.random指针一旦指定,便不再更改.请设计算法,复制此单链表,并 ...
- 【32】确定你的public继承塑模出Is-A关系
1.public继承表示Is-A关系,也就是满足里氏代换.与之相对应的,private继承表示根据某物实现出,不满足里氏代换.子类对象初始化父类引用,编译通不过. 2.考虑下面的需求,企鹅继承鸟,Bi ...
- js原生瀑布流
背景: 1.在移动端开发,jq文件是显得非常庞大的,所以所有效果尽量用HTML5和原生js实现. 2.本次瀑布流是固定列数,采用非浮动的另外一种瀑布流思想实现的. 3.本次数据来源是json接口 4. ...
- [置顶] 【玩转cocos2d-x之七】场景类CCScene和布景类CCLayer
原创作品,转载请标明:http://blog.csdn.net/jackystudio/article/details/12708811 场景类CCScene和布景类CCLayer都是作为一个容器来使 ...
- java 十六进制数的转换
今天晚上做了一道java基础题,题目看起来简单,但是实现起来却花了我近两个小时的时间,认真的做这道题,你会发现它特别考你的基本功.有兴趣的可以试一下哦. 题目: 请用此语言编写如下函数,采用自己的算法 ...
- 浅谈Perl的类、包、模块与面对对象编程
http://blog.chinaunix.net/uid-27464093-id-3308003.html Perl面向对象 Perl面向对象学习例子实例代码教程 - 在我们了解perl的面向对象的 ...
- css中那些你可能没注意到的东西
1.inline元素,添加position:absolute;可定宽高,position:relative;则不行,不信你试试! 2.inline元素添加浮动后,不用加display:block;也可 ...
- windows 7文件共享方法
现在家里有几台电脑是很常见的,把家里的几台电脑组成局域网,共享文件.联机游戏是非常有必要的,但是组建局域网又是很多朋友永远的痛,需要设置工作组.设置登录方式.打开服务等等,时常还会出点小问题而无法共享 ...
- 手把手教你使用UICollectionView写公司的项目
在很多app中都有这样通用的页面,一直没有机会使用UICollectionView,只是简单的看过他的使用方法.今天公司美工出图,使用了他,并且遇到了好多的坑.记录一下过程,不确定使用的方法是不是最优 ...