Qt C++编程基础与应用

从C++基础到QT开发实战,配套资源丰富
分享 推荐 0 收藏 2 阅读 418
韩改宁 (作者) 978-7-115-65674-2

关于本书的内容有任何问题,请联系 刘博

1. 内容从基础理论到实践操作,并通过实操代码测试,对应有效果图和关键代码。特别是进阶篇实用性强,在网络、数据库、多线程、图像处理和跨平台等实际通用性强。
2. 案例经典实用,都来自工程实践,可借鉴性强。章节习题配套合理、实验操作性强,并附有关键代码。软件版本较新,代码通用性好。
¥69.80 ¥59.33 (8.5 折)
教学资源仅供教师教学使用,转载或另作他用版权方有权追究法律责任。

内容摘要

本书是计算机类专业课程Qt开发的配套教材,Qt开发是一门软硬件结合、对编程能力要求较高的课程。本书以Qt 5.12.2为开发平台,首先介绍Qt基本概念、信号和槽机制、Qt的对话框设计、Qt的主窗口设计、QWidget类及窗口部件、Qt的部件布局管理;然后介绍了Qt的项部件及项数据视图、Qt的目录与文件操作、Qt中的事件机制等知识;最后讲解Qt的网络编程技术、Qt的数据库应用、Qt的多线程技术、Qt的OpenCV技术以及Qt的跨平台技术等进阶内容。
本书文字通俗易懂,内容循序渐进,由浅入深。书中提供了大量案例,可帮助读者加深对Qt开发工具和编程方法的理解,并更好地掌握嵌入式系统的应用技术和基本开发技能。
本书可作为高等院校计算机软件开发相关专业的教材,也适合具有C语言或者C++基础的Qt初学者、软件开发人员和工程技术人员使用。

目录

第一篇 基础篇
1.1 Qt软件简介 1
1.1.1 Qt基本介绍 1
1.1.2 Qt的GUI类库 2
1.1.3 Qt的版本 2
1.1.4 Qt的安装 4
1.2 Qt与面向对象程序设计 7
1.2.1 面向对象程序设计概念 7
1.2.2 面向对象程序设计术语 8
1.2.3 类及类的成员 10
1.2.4 类对象的定义及使用方法 17
1.3 Qt Creator的使用 20
1.3.1 Qt Creator编辑项目 20
1.3.2 Qt Creator编译项目 25
1.4 Qt类库 26
1.5 作业 28

2.1 信号与槽的原理 29
2.1.1 信号与槽简介 29
2.1.2 信号与槽通信机制 29
2.2 信号与槽的操作 33
2.2.1 声明信号 33
2.2.2 定义槽 34
2.2.3 信号与槽的连接方法 34
2.2.4 信号与槽的断开方法 36
2.2.5 emit发送信号 37
2.2.6 信号与槽机制的局限性 37
2.3 信号与槽的应用案例 37
2.4 作业 38

3.1 Qt的窗口类 40
3.1.1 窗口类的概念 40
3.1.2 QDialog窗口类 41
3.1.3 QDialog类的继承关系 41
3.2 内置对话框窗口类 42
3.2.1 颜色对话框 42
3.2.2 字体对话框 43
3.2.3 文件对话框 44
3.2.4 消息对话框 46
3.2.5 输入对话框 47
3.2.6 页面设置对话框 49
3.2.7 打印对话框 50
3.2.8 打印预览对话框 50
3.2.9 进度对话框 51
3.3 自定义对话框窗口类 52
3.4 对话框的应用案例 52
3.5 作业 53

4.1 主窗口概述 54
4.1.1 各部件功能 54
4.1.2 主窗口类 55
4.2 主窗口的创建方法和设计流程 56
4.2.1 主窗口的创建方法 56
4.2.2 主窗口的设计流程 57
4.3 主窗口应用程序设计 57
4.3.1 主窗口应用的界面设计 57
4.3.2 主窗口功能的实现 61
4.4 主窗口的应用案例 62
4.5 作业 62

5.1 QWidget类概述 63
5.1.1 QWidget窗口类型 64
5.1.2 QWidget窗口布局 66
5.2 按钮控件类 67
5.2.1 QAbstractButton抽象基类 67
5.2.2 QPushButton部件 68
5.2.3 QRadioButton部件 70
5.2.4 QCheckBox部件 71
5.2.5 QToolButton部件 71
5.2.6 QCommandLinkButton部件 72
5.2.7 QDialogButtonBox部件 73
5.3 输入控件类 74
5.3.1 下拉列表框部件 75
5.3.2 文本编辑框部件 77
5.3.3 数值输入框部件 79
5.3.4 滑块部件 83
5.4 显示类部件 85
5.4.1 QLabel部件 85
5.4.2 QTextBrowser部件 87
5.4.3 QGraphicsView部件 88
5.4.4 QLCDNumber部件 88
5.4.5 QCalendarWidget部件 90
5.4.6 QProgressBar部件 92
5.4.7 QOpenGLWidget部件 93
5.5 容器类部件 93
5.5.1 QGroupBox部件 94
5.5.2 QScrollArea部件 94
5.5.3 QToolBox部件 94
5.5.4 QTabWidget部件 95
5.5.5 QStackedWidget部件 96
5.5.6 QFrame部件 96
5.5.7 QMdiArea部件 97
5.6 QWidget类综合应用案例 97
5.7 作业 97

6.1 布局管理概述 98
6.1.1 QBoxLayout布局 99
6.1.2 QGridLayout网格布局 102
6.1.3 QFormLayout表单布局 103
6.1.4 QStackedLayout堆栈布局 104
6.2 窗口分割器 105
6.2.1 QSplitter概述 105
6.2.2 QSplitter应用 105
6.3 堆栈窗口部件 106
6.3.1 QStackedWidget概述 106
6.3.2 QStackedWidget应用 107
6.4 综合应用案例 108
6.5 作业 108

7.1 项部件和项视图部件概述 109
7.2 项部件Item Widgets 110
7.2.1 列表部件QListWidget 110
7.2.2 树形部件QTreeWidget 113
7.2.3 表格部件QTableWidget 115
7.2.4 ItemWidgets综合应用案例 117
7.3 Model/View 118
7.3.1 Model/View概念 118
7.3.2 Model模型 120
7.4 项视图Item Views 125
7.4.1 列表视图部件QListView 125
7.4.2 树形视图部件QTreeView 127
7.4.3 表格视图部件QTableView 129
7.4.4 多列视图部件QColumnView 132
7.4.5 撤销视图部件QUndoView 132
7.5 综合应用案例 132
7.6 作业 133

8.1 目录操作 134
8.2 I/O操作 138
8.3 文件信息 139
8.3.1 I/O设备类 139
8.3.2 文件类 140
8.3.3 文件信息类 140
8.3.4 临时文件类 141
8.4 文件的读写操作 142
8.4.1 二进制文件的读写操作 143
8.4.2 文本文件的读写操作 145
8.5 综合应用案例 146
8.6 作业 147

9.1 事件概念 148
9.2 事件分类 150
9.3 常用事件 151
9.3.1 鼠标事件 151
9.3.2 键盘事件 153
9.3.3 事件过滤器 155
9.4 定时器事件 157
9.5 绘图事件 160
9.5.1 基本概念 160
9.5.2 绘图元素 161
9.5.3 绘图操作 165
9.5.4 图像加载与存储 168
9.5.5 变换函数 172
9.6 综合应用案例 177
9.7 作业 178
第二篇 进阶篇
10.1 计算机网络概述 179
10.2 TCP网络编程 180
10.2.1 TCP概念 180
10.2.2 TCP编程模型 181
10.2.3 TCP通信逻辑 181
10.2.4 TCP编程案例 182
10.3 UDP网络编程 187
10.3.1 UDP概念 187
10.3.2 UDP通信原理 188
10.3.3 UDP编程案例 190
10.4 HTTP编程 193
10.4.1 HTTP概念 193
10.4.2 HTTP通信 193
10.4.3 URL与资源简介 194
10.4.4 HTTP编程案例 195

11.1 数据库基本概念 199
11.1.1 数据库技术发展史 199
11.1.2 相关概念 200
11.1.3 常用的数据库管理系统概述 201
11.2 SQLite数据库基础 204
11.2.1 SQLite的特点 204
11.2.2 SQLite的安装 204
11.2.3 SQLite的常用命令 207
11.2.4 SQLite 3的数据类型 209
11.3 Qt数据库操作 211
11.3.1 QtSQL模块简介 211
11.3.2 数据库的连接 212
11.3.3 数据库的使用 213
11.4 SQLite的应用案例 216

12.1 线程基础 218
12.2 Qt线程简介 218
12.3 Qt多线程编程方法 220
12.3.1 QThread线程编程 220
12.3.2 QRunnalble编程 225
12.3.3 QtConcurrent编程 226

13.1 OpenCV简介 229
13.2 OpenCV环境搭建 230
13.3 OpenCV在Qt中的应用 233
13.4 综合应用案例 237
13.4.1 行人及人脸检测 237
13.4.2 深度学习模型的车辆检测 240

14.1 跨平台概述 245
14.2 跨平台原理 246
14.2.1 跨平台的框架 246
14.2.2 跨平台的部署 247
14.3 Qt跨平台案例 247
14.3.1 构建Android应用程序 247
14.3.2 在Windows操作系统中构建ARM应用程序 250
14.3.3 Qt及其应用程序移植 255
14.3.4 案例在多平台的运行结果 257

参考文献 258

读者评论

赶紧抢沙发哦!

我要评论

作者介绍

韩改宁 硕士生导师,副教授。近年来先后主讲课程《单片机原理与应用》、《数字电路》、《嵌入式系统开发》、《嵌入式Linux系统》、《嵌入式软件设计》、《C语言程序设计》、《QtC++程序设计》等课程。 主要研究方向:智能控制及嵌入式系统开发,主持横向科研项目2项,主持陕西省教育厅项目1项目,主持校级科研项目3项,参与国家自然基金项目2项、省部级科研项目多项,参编教材3部;发表论文30余篇,其中SCI收录3篇,EI收录3篇,核心20余篇,申请专利5项目,软件著作权2项。 指导学生参加 “全国嵌入式设计大赛”获得全国三等奖(2项)、赛区一、二、三等奖(5项);指导学生参加“全国信息技术应用水平大赛”获得全国二等奖(1项),并获优秀指导教师奖;指导学生参加 “中国互联网+大学生创新创业大赛” 获陕西赛区铜奖(3项),其中,互联网+大赛获校级特等奖(2项),二等奖(2项);指导学生参加第七届“第七届全国大学生工程训练综合能力竞赛” 获陕西赛区三等奖(1项);指导学生参加全国大学生创新创业国家级项目(4项),指导学生发表论文6余篇,指导学生参与合作申请实用新型专利2项,软件著作权1项。2021年入选咸阳师范学院“双师型”师资队伍。

相关图书

人邮微信
本地服务
人邮微信
教师服务
二维码
读者服务
读者服务
返回顶部
返回顶部