第1章 开始Qt的第一个程序 1
1.1 认识Qt 1
1.2 建立Qt的工程项目 3
1.3 了解Qt生成的工程文件 6
1.4 了解Qt的程序结构 10
第2章 窗口 13
2.1 主窗口 13
2.1.1 主窗口的框架 13
2.1.2 主窗口的标题 14
2.1.3 主窗口的图标 16
2.1.4 主窗口的基本操作 18
2.2 菜单 19
2.2.1 设计菜单 19
2.2.2 编写菜单代码 22
2.2.3 弹出式菜单 23
2.3 工具条 24
2.3.1 设计工具条 24
2.3.2 编写工具条代码 25
2.3.3 在工具条添加部件 25
2.3.4 工具条窗口 27
2.4 状态条 29
2.4.1 在状态条显示信息 29
2.4.2 在状态条添加部件 29
2.5 系统拖盘图标 30
第3章 信号和槽 33
3.1 基本概念 33
3.2 在Qt Designer中建立信号和槽 34
3.3 自定义信号和槽 36
第4章 键盘和鼠标的操作 41
4.1 键盘和鼠标的类 41
4.2 键盘事件的响应 41
4.3 鼠标事件的响应 43
第5章 窗口部件 44
5.1 按钮 44
5.1.1 按钮的种类 44
5.1.2 按钮的设置 45
5.1.3 按钮的编码实现 47
5.2 输入窗口部件 48
5.2.1 设计输入窗口 48
5.2.2 值的设置 50
5.2.3 值的读取 52
5.2.4 值的输入检验 52
5.3 显示窗口部件 55
5.3.1 设计显示窗口 55
5.3.2 值的设置和读取 56
5.4 浏览器 56
5.4.1 文本浏览器 56
5.4.2 图像浏览器 58
5.4.3 Web浏览器 59
5.5 基本布局 61
5.5.1 布局的设计 62
5.5.2 布局的编码实现 63
5.6 项的显示部件 63
5.6.1 设计项显示部件 64
5.6.2 编写项的代码 65
5.6.3 在项中加入窗口部件 68
5.6.4 在项中加入弹出菜单 68
5.7 列项的显示视图 69
5.7.1 文件系统模型 70
5.7.2 字符串列表模型 71
5.7.3 标准项模型 72
5.7.4 委托的建立 73
5.8 容器部件 78
5.9 自定义窗口部件 81
第6章 对话框 86
6.1 使用内置标准对话框 86
6.1.1 颜色对话框 86
6.1.2 文件对话框 87
6.1.3 字体对话框 88
6.1.4 输入对话框 89
6.1.5 消息对话框 90
6.1.6 页面设置对话框 91
6.1.7 打印对话框 92
6.1.8 打印预览对话框 92
6.1.9 进度显示对话框 94
6.2 内置标准对话框中的文字替换 94
6.3 建立自己的对话框 96
第7章 文件与打印 100
7.1 文件 100
7.1.1 读取格式化文本 100
7.1.2 保存文本文件 101
7.1.3 读取二进制文件 102
7.1.4 使用结构 104
7.1.5 读取XML文件 105
7.2 打印 110
7.2.1 打印文本文件 110
7.2.2 程序打印控制 112
7.2.3 打印图像 113
第8章 多文档界面与切分窗口 115
8.1 多文档界面 115
8.2 切分窗口 120
第9章 绘图 123
9.1 2D绘图 123
9.1.1 绘图的程序框架 123
9.1.2 绘制图形 123
9.1.3 在内存中绘制图形 127
9.2 3D绘图 129
9.2.1 从OpenGL到Qt 129
9.2.2 使用QGLWidget 130
9.2.3 使用贴图 134
第10章 进程与线程 136
10.1 进程 136
10.1.1 进程的启动 136
10.1.2 进程的关闭 137
10.1.3 与进程通信 137
10.2 线程 139
10.2.1 线程的创建与启动 139
10.2.2 线程间的同步操作 141
10.2.3 线程综合例子 143
10.3 自定义函数库 147
10.3.1 动态链接库 147
10.3.2 静态链接库 151
10.4 共享内存 152
第11章 网络 154
11.1 获取网络信息 154
11.1.1 获取主机IP地址 154
11.1.2 获取主机IP地址和子网掩码 156
11.1.3 获取主机MAC地址 157
11.2 UDP通信 158
11.2.1 基于主窗口的实现 159
11.2.2 基于线程的实现 162
11.3 TCP通信 166
第12章 数据库 172
12.1 Qt数据库基础 172
12.1.1 Qt数据库的类库结构 172
12.1.2 Hello QtDatabase 173
12.2 连接数据库 175
12.3 数据库操作 177
12.3.1 执行SQL语句 177
12.3.2 使用占位符 177
12.3.3 数据检索 178
12.3.4 读取字段名 179
12.3.5 自定义数据模型 179
12.4 SQL数据模型 180
12.4.1 使用QSqlTableModel 181
12.4.2 使用QSqlRelationalTableModel 183
第13章 简单网络管理SNMP 185
13.1 简单网络管理协议 185
13.1.1 基本概念 185
13.1.2 使用Net-SNMP软件包 187
13.2 Qt开发管理站 187
第14章 字符串、列表与时间类 199
14.1 QString类 199
14.1.1 创建字符串 199
14.1.2 格式化输出字符串 200
14.1.3 类型转换 201
14.1.4 字符串操作 202
14.2 QList类 203
14.2.1 定义类型列表 203
14.2.2 列表的操作 204
14.3 日期、时间和定时器类 204
14.3.1 QDate类 204
14.3.2 QTime类 205
14.3.3 QDateTime类 206
14.3.4 QTimer类 206
参考文献 208