第1章 走近Qt 1
1.1 Qt简介 1
1.2 Qt纪事概览 3
1.3 Qt套件的组成 5
1.4 Qt的授权 7
1.5 Qt的产品 10
1.6 Qt的服务与支持 10
1.7 Qt的最新进展 11
1.7.1 增加协议 11
1.7.2 开放源代码库 12
1.7.3 确定Qt的发展方向 12
1.7.4 Qt 4.5——Qt发展的重要里程碑 13
1.8 为什么选择Qt 17
1.9 问题与解答 19
1.10 总结与提高 21
第2章 Qt的安装与配置 22
2.1 获取Qt 22
2.2 协议说明 23
2.3 安装Qt 23
2.3.1 Qt/X11的安装 23
2.3.2 Qt/Windows的安装 29
2.3.3 Qt/Mac的安装 39
2.3.4 Qt/Windows CE 39
2.3.5 Qt/S60 41
2.3.6 基于Linux发行版的安装 48
2.4 配置Qt 4环境 60
2.4.1 Windows平台 61
2.4.2 X11平台 61
2.5 问题与解答 62
2.6 总结与提高 63
第3章 Qt编程基础 64
3.1 标准C++精讲 64
3.1.1 程序设计语言介绍 64
3.1.2 C++语法基础知识 67
3.1.3 C++高级应用——虚函数 74
3.2 Windows编程基础 76
3.2.1 需要掌握的技能 76
3.2.2 Windows运行机理 76
3.2.3 Windows编程基础 81
3.3 Linux编程基础 84
3.3.1 你必须掌握的技能 84
3.3.2 文件系统管理 85
3.3.3 X Window系统 87
3.3.4 常用命令 90
3.3.5 Shell应用 91
3.3.6 使用库程序 94
3.3.7 使用vi 97
3.3.8 使用GCC 100
3.3.9 使用GDB 104
3.4 Mac编程基础 110
3.4.1 你必须掌握的技能 110
3.4.2 Mac OS X的系统架构 110
3.4.3 Mac OS X文件系统 111
3.4.4 Cocoa应用开发简介 115
3.4.5 Xcode简介 116
3.5 问题与解答 117
3.6 总结与提高 118
第4章 Qt 4集成开发环境 120
4.1 常见的Qt IDE 120
4.2 Qt Creator 121
4.2.1 简介 121
4.2.2 主要特点 121
4.2.3 安装与配置 122
4.3 Eclipse 122
4.3.1 简介 122
4.3.2 主要特点 123
4.3.3 安装与配置 123
4.3.4 使用要领 127
4.4 Visual Studio 2008与Qt 4.5 130
4.5 问题与解答 134
4.6 总结与提高 135
第5章 使用Qt基本GUI工具 137
5.1 使用Qt Designer进行GUI设计 137
5.1.1 简介 137
5.1.2 启动并设置Qt Designer 138
5.1.3 功能说明 139
5.1.4 Qt GUI设计基本流程 142
5.2 使用Qt Assistant获取在线文档与帮助 146
5.2.1 简介 146
5.2.2 Qt的参考文档 147
5.2.3 使用Qt Assistant 147
5.3 使用Qt Demo学习Qt应用程序开发 156
5.4 问题与解答 159
5.5 总结与提高 160
第6章 Qt 4程序开发方法和流程 161
6.1 开发方法 161
6.2 Hello Qt! 162
6.2.1 基本流程 162
6.2.2 源码分析 163
6.2.3 编译运行 164
6.2.4 第2种方法 166
6.2.5 第3种方法 172
6.3 几个重要的知识点 177
6.4 问题与解答 178
6.5 总结与提高 180
第7章 对话框 181
7.1 QDialog类 181
7.2 子类化QDialog 182
7.3 快速设计对话框 187
7.4 常见内建对话框的使用 195
7.4.1 标准输入框 195
7.4.2 标准颜色对话框 195
7.4.3 标准字体对话框 197
7.4.4 标准消息对话框 199
7.4.5 标准对话框的使用实例 201
7.5 模态对话框与非模态对话框 211
7.6 问题与解答 212
7.7 总结与提高 214
第8章 主窗口 215
8.1 主窗口框架 215
8.2 创建主窗口的方法和流程 216
8.2.1 方法 216
8.2.2 流程 217
8.3 代码创建主窗口 217
8.3.1 头文件 218
8.3.2 实现文件 219
8.4 使用Qt Designer创建主窗口 229
8.4.1 创建菜单 229
8.4.2 创建动作 233
8.4.3 创建工具栏 235
8.4.4 创建锚接窗口部件 235
8.4.5 创建中心窗口部件 236
8.5 中心窗口部件专题 236
8.5.1 几种常见情形 236
8.5.2 创建和使用 237
8.6 Qt 4资源系统 238
8.6.1 Qt资源系统的改进 238
8.6.2 Qt 4资源集文件 238
8.6.3 资源文件的使用方法 239
8.6.4 资源浏览器的使用 240
8.7 锚接窗口 241
8.7.1 创建锚接窗口的方法和流程 242
8.7.2 设置锚接窗体状态的方法 243
8.8 多文档 243
8.9 问题与解答 251
8.10 总结与提高 253
第9章 Qt样式表与应用程序外观 254
9.1 应用程序的外观 254
9.1.1 应用程序的风格 254
9.1.2 如何设置样式 255
9.2 QStyle类的使用 255
9.3 样式表概述 261
9.4 使用样式表 263
9.4.1 与Qt Designer集成使用 264
9.4.2 样式表的应用实例 265
9.5 问题与解答 275
9.6 总结与提高 276
第10章 在程序中使用.ui文件 277
10.1 uic的使用 277
10.2 Ui_YourFormName.h文件的组成 278
10.3 编译时加入处理.ui文件的方法 284
10.3.1 直接使用法 284
10.3.2 单继承法 285
10.3.3 多继承法 286
10.4 运行时加入处理.ui文件的方法 289
10.5 信号与槽的自动连接 290
10.5.1 显式关联 290
10.5.2 自动关联 291
10.6 问题与解答 291
10.7 总结与提高 292
第11章 布局管理 293
11.1 基本概念和方法 293
11.1.1 摆放窗口部件的方法 293
11.1.2 布局管理器 294
11.1.3 优化布局结构 297
11.2 在Qt Designer中使用布局 300
11.2.1 应用和破除布局 300
11.2.2 快捷键 302
11.3 基本布局实践 302
11.3.1 QBoxLayout 302
11.3.2 水平布局 304
11.3.3 垂直布局 304
11.3.4 栅格布局 305
11.3.5 表单布局 307
11.3.6 删除布局内窗口部件的方法 309
11.3.7 基本布局的综合运用 309
11.4 堆栈布局 315
11.4.1 使用方法 315
11.4.2 如何索引窗口部件 315
11.4.3 实例——堆栈窗体 317
11.5 分裂器布局 321
11.5.1 使用方法 322
11.5.2 构造函数 322
11.5.3 一些深入的话题 323
11.5.4 分裂器布局实例 323
11.6 自定义布局管理器 325
11.7 布局管理经验总结 325
11.8 问题与解答 326
11.9 总结与提高 327
第12章 使用Qt Creator 328
12.1 Qt Creator概览 328
12.1.1 支持的平台 328
12.1.2 主要特点 328
12.2 Qt Creator的组成 329
12.2.1 模式选择器 330
12.2.2 输出面板 333
12.2.3 代码编辑器 335
12.2.4 会话管理器 337
12.2.5 Qt帮助集成功能 337
12.2.6 Qt设计师集成功能 338
12.3 快捷键和常用技巧 339
12.4 Qt Creator构建系统的设置 339
12.5 处理项目间依赖关系 342
12.6 Qt多版本共存时的管理 342
12.7 使用定位器在代码间快速导航 343
12.7.1 如何定位文件 344
12.7.2 如何设置过滤条件 344
12.8 如何创建一个项目 348
12.9 实例讲解 350
12.9.1 程序运行内部机理 350
12.9.2 设置环境 350
12.9.3 创建并组织项目 351
12.9.4 设计用户界面 351
12.9.5 头文件 352
12.9.6 实现文件 352
12.9.7 资源集文件 353
12.9.8 编译运行程序 354
12.10 使用Qt Creator调试程序 354
12.10.1 调试器引擎 354
12.10.2 与调试器交互 355
12.10.3 断点 355
12.10.4 程序的调试运行 356
12.10.5 堆栈视图 357
12.10.6 线程视图 357
12.10.7 局部变量和观察器视图 357
12.10.8 模块视图 357
12.10.9 反汇编视图和寄存器视图 358
12.10.10 程序调试实例 358
12.11 问题与解答 360
12.12 总结与提高 361
第13章 Qt核心机制与原理 362
13.1 Qt对标准C++的扩展 362
13.2 信号与槽 362
13.3 元对象系统 367
13.4 Qt的架构 368
13.5 Qt的事件模型 370
13.6 构建Qt应用程序 372
13.7 问题与解答 373
13.8 总结与提高 375
附录A qmake使用指南 376
A.1 qmake简介 376
A.2 使用qmake 376
A.2.1 .pro文件语法 376
A.2.2 qmake的存取函数 379
附录B make命令 382
B.1 命令解释 382
B.2 使用make自动构建 382
附录C Qt资源 384
C.1 Qt官方资源 384
C.2 Qt开发社区 385
C.2.1 国际社区 385
C.2.2 国内社区 385
C.2.3 有关Qt的博客 386
参考文献 387
后记 388