第1章 概述 1
第2章 有用的工具和qmake 6
2.1 Qt Creator IDE 6
2.2 Qt Assistant 14
2.3 Qt Designer 15
2.4 qmake 16
第3章 GUI设计与制作 19
3.1基础控件 19
3.1.1 QCheckBox和QButtonGroup 22
3.1.2 QComboBox 25
3.1.3 QCommandLinkButton 26
3.1.4 QDate类和QDateEdit控件 27
3.1.5 QTime类和QTimeEdit控件 30
3.1.6 QDateTime类和QDateTime Edit控件 33
3.1.7 QDial 35
3.1.8 QSpinBox和QDoubleSpinBox 36
3.1.9 QPushButton和QFocusFrame 39
3.1.10 QFontComboBox 41
3.1.11 QLabel和QLCDNumber 43
3.1.12 QLineEdit 45
3.1.13 QMenu和QMenuBar 47
3.1.14 QProgressBar 50
3.1.15 QRadioButton 51
3.1.16 QScrollArea 52
3.1.17 QScrollBar 53
3.1.18 QSizeGrip 55
3.1.19 QSlider 57
3.1.20 QTabWidget 58
3.1.21 QToolBar和QAction 60
3.1.22 QWidget 62
3.1.23 QTabBar 67
3.1.24 QToolBox 68
3.1.25 QToolButton 69
3.2布局管理器 70
3.3高级控件 73
3.3.1 QColumnView 74
3.3.2 QDataWidgetMapper 75
3.3.3 QDesktopWidget 77
3.3.4 QCalendarWidget 79
3.4使用Designer构建GUI 81
3.4.1控件和信号槽使用示例 84
3.4.2 Calculator Form示例 86
3.5对话框 88
3.5.1普通对话框 88
3.5.2用户自定义对话框 97
3.6主窗口 98
3.7模型/视图结构和数据绑定控件 101
3.7.1模型/视图结构 102
3.7.2使用模型类和视图控件 103
3.8用户自定义控件和插件 107
3.8.1实现用户自定义控件 109
3.8.2插件制作及布局 118
第4章 信号与槽 128
第5章 数据类型和有用的数据操作类 131
5.1比较和判断变量的函数 133
5.2数据类 136
5.3容器类 154
5.4字符串类 159
第6章 文件输入输出 163
第7章 图形 171
7.1使用QPainter类的图形 171
7.1.1 QPainter的基本绘图 172
7.1.2渐变 179
7.1.3转换 182
7.1.4组合 184
7.2图形视图框架 185
7.2.1图形视图架构 187
7.2.2图形视图的坐标 190
7.2.3图形视图的主要特点 191
7.2.4事件处理 193
7.2.5用户自定义QGraphicsItem 194
7.2.6 QGraphicsEffect 197
7.3使用Qt OpenGL模块的3D图形 202
7.3.1用于渲染3D图形的QGL Widget类 203
7.3.2 Hello OpenGL示例 206
7.3.3使用硬盘加速器的2D图形渲染 212
7.3.4 QPainter类的复绘 218
7.4可缩放向量图形 224
第8章 动画框架和状态机 227
8.1动画框架和类 228
8.2动画和状态机 235
第9章 线程 238
9.1 QThread类 242
9.2多线程编程 244
9.3线程等待条件 247
9.4使用信号量进行同步 249
9.5使用QtConcurrent的多线程 252
第10章 容器类和迭代器类 254
10.1 Java风格的迭代器模式 255
10.2 STL风格的迭代器模式 257
10.3使用foreach关键字访问迭代器 259
第11章 XML 261
11.1使用数据流的XML数据处理 263
11.2文档对象模型(DOM) 266
11.3 SAX模式 269
第12章 数据传输和网络编程 273
12.1网络 273
12.1.1使用QTcpSocket和QTcpServer进行TCP编程 277
12.1.2使用QUdpSocket的UDP 285
12.1.3主机名和DNS查询 291
12.1.4 HTTP协议 297
12.1.5承载管理 306
12.1.6基于服务器端/客户端的聊天示例 307
12.2 QtWebKit 314
12.2.1 QtWebKit模块提供的类 316
12.2.2 DOM查询 323
12.2.3 QtWebKit模块环境下的JQuery应用 325
12.2.4 QtWebKit和QObject模间的网桥 330
12.2.5混合客户端应用程序示例 336
12.3进程间通信 339
12.3.1 TCP/IP 340
12.3.2共享内存 341
12.3.3 D-Bus协议 346
12.3.4 QProcess 353
第13章 多媒体 355
13.1音频组件 356
13.2视频组件 359
13.3 camera组件 362
13.4收音机组件 364
第14章 数据库 365
14.1数据库和SQL简介 367
14.2关联和支持数据库的驱动 369
14.3使用SQL语句的数据库查询 377
14.4 Model类 383
14.5列表视图应用 386
14.6 SQL记录文件字段和GUI控件映射 388
14.7 Cached列表示例 392
14.8 Drill Down示例 395
第15章 Qt测试框架 405
15.1单元测试 409
15.2数据驱动测试 410
15.3模拟GUI事件 412
15.4 GUI事件重复测试 414
15.5基准测试 415
第16章 Qt Quick与QML 418
16.1 Qt Quick项目创建和有用的工具 419
16.2基本类型和扩展数据类型 421
16.3对象 427
16.3.1类型 428
16.3.2定义项目属性 433
16.3.3 Repeater和Loader 436
16.3.4转换 437
16.4用户输入和事件处理 438
16.5项目定位 444
16.6 State与Transition 446
16.7动画 450
16.8数据的显示 456
16.9模块化编程 461
16.10图形效果 466
16.11有用的QML类型 489
16.12 Canvas 492
16.13集成QML和C++ 495
16.14多媒体 500
第17章 Qt应用程序的发布 504
17.1多种平台下Qt应用程序的发布 504
17.1.1 Unix和Linux 504
17.1.2 Windows 505
17.1.3 Mac OS X 506
17.1.4 Android平台Qt应用程序的发布 507