1.3 Qt 套件的组成(以 Qt4.5 为准)
自 4.5 版开始,Qt 首次以 SDK 形式发布了 Qt 套件,并在单独的安装程序中包含了完整 的 Qt SDK。
Qt SDK 在一个单独安装程序内包含了使用 Qt 进行跨平台开发所需的全部工具,其中 包括:
1.Qt Creator - 跨平台 IDE
Qt Creator 是全新的跨平台集成开发环境 (IDE), 专为 Qt 开发人员的需求量身定 制。它包括:
- 高级 C++ 代码编辑器
- 集成的 GUI 外观和版式设计器-Qt
- 项目和生成管理工具
- 集成的上下文相关的帮助系统
- 图形化调试器(基于 GDB)
从这些话语中,我们不难看出 Nokia 全力打造 Qt Creator 的决心,意图将以前单独列 出的 Qt Designer、Qt Assistant、Qt Linguist 全部整合到 Qt Creator 中,把它们全部 作为 Qt Creator 的一部分,从而奠定 Qt Creator 的“官方出品、根正苗红”的地位。关 于 Nokia 的战略想法这里暂且不谈,虽然 Nokia 意图如此,但是笔者觉得还是有必要罗嗦 两句,向读者朋友介绍一下 Qt SDK 中的几个核心成员:
2.Qt 库
Qt Library
是一个拥有超过 400 C++类,同时不断扩展的库。它封装了用于端到端应用程序开发 所需要的所有基础结构。优秀的 Qt 应用程序接口包括成熟的对象模型,内容丰富的集合类,图形有户界面编程与布局设计功能,数据库编程,网络, XML,国际化,OpenGL 集成等等。
Qt Designer
是一个功能强大的 GUI 布局与窗体构造器,能够在所有支持平台上,以本地化的视图 外观与认知,快速开发高性能的用户界面。
Qt Assistant
是一个完全可自定义,重新分配的帮助文件或文档浏览器,又称作 Qt 助手。它的功能
类似于 MSDN,支持 html 的子集(图片、超链、文本着色), 支持目录结构、关键字索引 和全文搜索, 可以很方便的查找 Qt 的 API 帮助文档 ,它是编程人员必备、使用频率最高的工具之一。
Qt Demo
是 Qt 例子和演示程序的加载器,有了这个工具, 用户可以很方便的查看 Qt 提供的多 姿多彩的例子程序,从中不仅可以看到程序运行的情况,还可以查看源码和文档。
qmake
是一个用于生成 Makefile(编译的规则和命令行)的命令行工具。 它是 Qt 跨平台编 译系统的基础。 它的主要特点是可以读取 Qt 本身的配置, 为程序生成平台相关的 Makefile。
uic
是一个用来编译 ui 文件的命令行工具,全称是 UI Compiler。 它能把.ui 文件转化 为编译器可以识别的标准 C++文件, 生成的文件是一个.h。 这个工具通常情况下不需要用 户去手动调用, qmake 会帮你管理.ui 文件和调用 uic 工具。
moc
是一个 用来生成一些与信号和槽相关的底层代码的预编译工具 。全称是 Meta Object Compiler, 即元对象编译器。该工具处理带有 Q_OBJECT 宏的头文件, 生成形如 moc_xxx.h, moc_xxx.cpp 的 C++代码,之后再与程序的代码一同编译。 同样,这个命令行 工具也不需要用户手动调用, qmake 会在适当的时候调用这个工具。
rcc
是一个 Qt 的资源文件编译工具。 Qt 的资源系统是自己一套特别的设计, 工程中可以 包含后缀为 qrc 的资源文件, 由 rcc 工具根据.qrc 文件中的内容将相关的文件编译为二进 制,并与源码编译在一起,保存在应用程序的二进制文件中。 这个命令行工具同样不需要 手动调用,一般由 qmake 调配使用。
qtconfig
是一个在 X11 系统下用于配置 Qt 环境的工具。 它可以设定 Qt 环境的字体、Style、 Palette、打印机等。 它的设定信息会保存在用户的 home 目录下,所以可以按不同用户的 喜好来设定不同的值。
3. 翻译和国际化工具
Qt Linguist
是一套用来消除国际化工作流程中所带来障碍的工具,又称作 Qt 语言家。 开发小组 可把应用程序的翻译转换外包给非技术性翻译人员,从而可增加精确度,大大加快本地化处 理过程。
lupdate
是 Qt 国际化的重要命令行工具之一, 它的功能是从源码文件或其他资源文件中提取 需要翻译的字符串,并将之用正确的编码和格式存入 ts 文件中。 这个 ts 文件是 xml 格式 的普通文本文件, 但不建议用普通的文本编辑工具来编辑, 最好的方法是用 Linguist 来 处理这个文件。
lrelease
是 Qt 国际化的重要命令行工具之一, 它负责将 ts 文件转化为程序使用的 qm 文件。 转化过程最大的变化是去掉了原始文件中所有的空白和未翻译的内容, 并将存储格式压 缩, 所以 qm 文件是保留所有有效信息但占用硬盘最少的格式。