热门排行
简介
Qt是诺基亚公司的C++可视化开发平台,目前最新版本为Qt 5。《Qt5开发及实例》以Qt 5作为平台,每个章节在简单介绍开发环境的基础上,用一个小实例,介绍Qt 5应用程序开发各个方面,然后系统介绍Qt 5应用程序的开发技术,一般均通过实例介绍和讲解内容。最后通过三个大实例,系统介绍Qt 5综合应用开发。光盘中包含本书教学课件和书中所有实例源代码及其相关文件。
通过学习本书,结合实例上机练习,一般能够在比较短的时间内掌握Qt 5应用技术。
《Qt5开发及实例》既可作为Qt 5的学习和参考用书,也可作为大学教材或Qt 5培训用书。
Qt5开发及实例 目录:
第1章 Qt概述 1
1.1 什么是Qt 1
1.2 Qt 5的安装 2
1.2.1 下载Qt 5 Creator 2
1.2.2 运行Qt 5 Creator 2
1.2.3 Qt 5开发环境 4
1.3 Qt 5开发步骤及实例 6
1.3.1 Qt 5 Designer设计简单实例 7
1.3.2 代码实现简单实例 16
L1.2 Qt 5安装:概念解析 19
伙伴编辑模式(Edit Buddy) 19
L1.3 Qt 5开发步骤及实例:概念解析 19
L1 信号和槽机制(Signal&Slot) 19
L2 Qt 5元对象系统 22
L3 布局管理器 22
第2章 Qt 5模板库、工具类及控件 23
2.1 字符串类 23
2.1.1 操作字符串 23
2.1.2 查询字符串数据 25
2.1.3 字符串的转换 26
2.2 容器类 28
2.2.1 QList类、QLinkedList类和QVector类 29
2.2.2 QMap类和QHash类 35
2.3 QVariant类 38
2.4 算法及正则表达式 41
2.4.1 Qt 5常用算法 42
2.4.2 基本的正则表达式 43
2.5 控件 44
2.5.1 按钮组(Buttons) 44
2.5.2 输入控件组(Input Widgets) 46
2.5.3 显示控件组(Display Widgets) 48
2.5.4 空间间隔组(Spacers) 49
2.5.5 布局管理组(Layouts) 49
2.5.6 容器组(Containers) 50
2.5.7 项目视图组(Item Views) 53
2.5.8 项目控件组(Item Widgets) 55
2.5.9 小综合例子 60
L2.1 字符串类QString:概念解析 65
L1 隐式共享 65
L2 内存分配策略 66
L2.5 Qt 5控件:概念解析 67
Qt5::WindowFlags枚举类型 67
第3章 Qt 5布局管理 70
3.1 分割窗口QSplitter类 70
3.2 停靠窗口QDockWidget类 72
3.3 堆栈窗体QStackedWidget类 76
3.4 基本布局(QLayout) 79
3.5 综合例子:修改用户资料 86
第4章 Qt 5基本对话框 99
4.1 标准文件对话框类 104
4.1.1 函数说明 104
4.1.2 创建步骤 105
4.2 标准颜色对话框类 106
4.2.1 函数说明 106
4.2.2 创建步骤 107
4.3 标准字体对话框类 108
4.3.1 函数说明 108
4.3.2 创建步骤 108
4.4 标准输入对话框类 109
4.4.1 标准字符串输入对话框 113
4.4.2 标准条目选择对话框 114
4.4.3 标准int类型输入对话框 115
4.4.4 标准double类型输入对话框 116
4.5 消息对话框类 117
4.5.1 Question消息框 121
4.5.2 Information消息框 122
4.5.3 Warning消息框 123
4.5.4 Critical消息框 124
4.5.5 About消息框 124
4.5.6 About Qt消息框 125
4.6 自定义消息框 125
4.7 工具盒类 128
4.8 进度条 134
4.9 调色板与电子钟 139
4.9.1 QPalette类 139
4.9.2 QTime类 147
4.9.3 综合例子 147
4.10 可扩展对话框 151
4.11 不规则窗体 156
4.12 程序启动画面(QSplashScreen) 159
第5章 Qt 5主窗体 162
5.1 Qt 5主窗体构成 162
5.1.1 基本元素 162
5.1.2 典型案例(文本编辑器) 163
5.1.3 菜单与工具栏的实现 168
5.2 Qt 5文件操作功能 174
5.2.1 新建文件 174
5.2.2 打开文件 175
5.2.3 打印文件 178
5.3 Qt 5图像坐标变换 181
5.3.1 缩放功能 181
5.3.2 旋转功能 183
5.3.3 镜像功能 184
5.4 Qt 5文本编辑功能 186
5.4.1 设置字体 189
5.4.2 设置字号 190
5.4.3 设置文字加粗 191
5.4.4 设置字体倾斜 191
5.4.5 文字加下画线 191
5.4.6 设置文字颜色 192
5.4.7 设置字符格式 193
5.5 Qt 5排版功能 193
5.5.1 实现段落对齐 195
5.5.2 实现文本排序 196
第6章 Qt 5图形与图片 200
6.1 Qt 5位置相关函数 200
6.1.1 区别概述 200
6.1.2 使用举例 201
6.2 Qt 5基础图形的绘制 206
6.2.1 绘图框架设计 206
6.2.2 绘图区的实现 207
6.2.3 主窗口的实现 212
6.3 Qt 5双缓冲机制 228
6.3.1 原理与设计 228
6.3.2 绘图区的实现 230
6.3.3 主窗口的实现 235
6.4 显示Qt 5 SVG格式图片 239
L6.4 Qt 5 SVG格式图片显示方法:概念解析 246
XML 246
第7章 Qt 5图形视图框架 247
7.1 图形视图体系结构 247
7.1.1 Graphics View的特点 247
7.1.2 Graphics View的三元素 248
7.1.3 GraphicsView的坐标系统 249
7.2 图形视图 251
7.2.1 飞舞的蝴蝶实例 252
7.2.2 地图浏览器实例 257
7.2.3 各种图元创建及实例 264
7.2.4 图元旋转、缩放、切变和位移及实例 277
第8章 Qt 5模型/视图结构 286
8.1 概述 287
8.1.1 基本概念 287
8.1.2 模型/视图类 288
8.2 模型(Model) 290
8.3 视图(View) 295
8.4 代理(Delegate) 310
第9章 Qt 5文件及磁盘处理 321
9.1 读写文本文件 321
9.1.1 QFile类读写文本 321
9.1.2 QTextStream类读写文本 323
9.2 读写二进制文件 325
9.3 目录操作与文件系统 327
9.3.1 文件大小及路径获取实例 328
9.3.2 文件系统浏览实例 330
9.4 获取文件信息 335
9.5 监视文件和目录变化 341
第10章 Qt 5网络与通信 344
10.1 获取本机网络信息 344
10.2 基于UDP的网络广播程序 348
10.2.1 UDP协议工作原理 349
10.2.2 UDP 编程模型 349
10.2.3 UDP服务器编程实例 350
10.2.4 UDP客户端编程实例 353
10.3 基于TCP的网络聊天室程序 357
10.3.1 TCP协议工作原理 357
10.3.2 TCP编程模型 357
10.3.3 TCP服务器编程实例 358
10.3.4 TCP客户端编程实例 366
10.4 Qt网络应用开发初步 373
10.4.1 网页浏览实例 374
10.4.2 文件下载实例 375
第11章 Qt 5事件处理 380
11.1 鼠标事件及实例 380
11.2 键盘事件及实例 383
11.3 事件过滤及实例 391
第12章 Qt 5多线程 397
12.1 多线程的简单实例 398
12.2 多线程控制 402
12.2.1 互斥量 403
12.2.2 信号量 405
12.2.3 线程等待与唤醒 409
12.3 多线程应用 413
12.3.1 服务器编程实例 413
12.3.2 客户端编程实例 420
第13章 Qt 5数据库 426
13.1 数据库基本概念 426
13.2 常用SQL命令 430
13.2.1 数据查询 430
13.2.2 数据操作 434
13.3 Qt操作数据库实例 436
13.3.1 Qt操作SQLite数据库 436
13.3.2 Qt操作主/从视图及XML 444
第14章 Qt 5多国语言国际化 481
14.1 概念 481
14.1.1 国际化的支持的实现 482
14.1.2 翻译工作:“*.qm”文件的生成 483
14.2 实例 483
14.2.1 实例1 483
14.2.2 实例2 488
第15章 Qt 5单元测试框架 494
15.1 QTestLib框架 494
15.2 简单的Qt单元测试 495
15.3 数据驱动测试 499
15.4 简单性能测试 504
第16章 Qt 5综合实例:汽车销售管理系统 506
16.1 功能介绍与界面设计 506
16.1.1 功能简介 506
16.1.2 主界面设计 507
16.1.3 菜单设计 508
16.2 实现品牌车管理功能 511
16.2.1 出售车辆 511
16.2.2 日销售清单 517
16.3 销售统计图表功能 524
16.3.1 视图设计 524
16.3.2 界面设计 528
16.4 添加登录界面 531
第17章 综合实例:Qt版Word字处理软件 535
17.1 核心功能界面演示 535
17.2 界面设计与开发 537
17.2.1 建立MDI程序框架 537
17.2.2 菜单系统设计 542
17.2.3 工具栏设计 556
17.2.4 子窗口管理 561
17.2.5 界面生成试运行 569
17.3 基本编辑功能实现 573
17.3.1 打开文件 573
17.3.2 保存文件 577
17.3.3 文本操作 581
17.4 文档排版美化功能实现 583
17.4.1 字体格式设置 583
17.4.2 段落对齐设置 587
17.4.3 颜色设置 588
17.4.4 段落标号、编号 590
17.4.5 文档打印与预览 593
第18章 综合实例:Qt版聊天软件 597
18.1 核心功能界面演示 597
18.2 界面设计与开发 599
18.2.1 创建“抽屉盒” 599
18.2.2 设计聊天窗口 604
18.2.3 将图片按钮与聊天窗关联 607
18.3 基本聊天会话功能实现 612
18.3.1 基本原理 612
18.3.2 消息类型与UDP广播 613
18.3.3 会话过程的处理 618
18.3.4 聊天程序试运行 621
18.4 文件传输功能实现 622
18.4.1 需求方案 622
18.4.2 服务器开发 623
18.4.3 客户端开发 631
18.4.4 主界面的控制 637
18.4.5 文件传输试验 641
18.5 附加功能实现 641
18.5.1 更改字体、字号和颜色 641
18.5.2 字体切换 644
18.5.3 保存和清除聊天记录 645
第19章 Linux下Qt的安装和简单使用 648
19.1 安装Qt步骤 648
19.2 Hello World例子 650
19.2.1 通过编写代码实现 651
19.2.2 通过Qt Designer实现 654
附录A C++相关知识 660
A.1 C++程序结构 660
A.2 C++预处理 661
A.3 C++异常处理 664
A.4 C++面向对象编程 667
附录B Qt 5调试 679
B.1 修正语法错误 679
B.2 设置断点 680
B.3 程序调试运行 681
B.4 查看和修改变量的值 682
B.5 qDebug()的用法 684