×
超值优惠券
¥50
100可用 有效期2天

全场图书通用(淘书团除外)

关闭
暂无评论
图文详情
  • ISBN:9787115637703
  • 装帧:平装-胶订
  • 册数:暂无
  • 重量:暂无
  • 开本:16开
  • 页数:340
  • 出版时间:2024-08-01
  • 条形码:9787115637703 ; 978-7-115-63770-3

本书特色

1.让读者事半功倍快速入门Qt:基于Qt 6版本编写,实例教学,Qt Widgets和Qt Quick两大编程方式同步讲解,

2.Qt 开源社区创始人yafeilinux新作

3.配套资源一应俱全:600余页PPT,218个知识点示例,8组实验,2个综合实例

4.社区支持,配套网络教程持续更新

内容简介

这是一本Qt 6编程入门书,同步讲解了Qt Widgets和Qt Quick编程内容。全书共14章,前8章是基础内容,包括Qt概述、Qt Widgets窗口部件和Qt Quick控件、布局管理、事件系统、界面外观等内容,其中穿插介绍了Qt Creator开发环境、Qt信号和槽机制、Qt程序编译过程、QML语法基础等知识;第9章介绍图形动画基础;第10~12章介绍数据存储和显示的相关内容,本书从Qt涉及的众多应用领域中选取了常用的数据处理来重点讲解;第13章介绍多媒体应用;第14章介绍QML和C++的集成开发。本书注重知识点和实践的结合,提供的实例兼具示范性和实用性,并就知识点提供了Qt文档关键字提示,让读者在学习的过程中掌握自主学习的方法并逐步养成良好的编程习惯。
本书提供了课件PPT、实验讲义和程序源码,可作为高等院校相关课程的教材,也可作为各类软件开发人员的参考书。

目录

第 1章 开始Qt 6编程 1

1.1 Qt概述 1

1.1.1 Qt的历史 1

1.1.2 Qt的特色 2

1.1.3 Qt软件开发框架介绍 3

1.1.4 Qt的授权 4

1.1.5 Qt Quick和QML介绍 4

1.2 如何选择Qt Widgets和Qt Quick 6

1.2.1 两者的区别 6

1.2.2 如何选择两种技术 6

1.3 Qt 6的下载和安装 7

1.4 Qt Creator开发环境简介 8

1.4.1 Qt Creator的特色 8

1.4.2 Qt Creator界面介绍 8

1.5 运行一个示例程序 10

1.5.1 运行Qt Widgets示例程序 11

1.5.2 运行Qt Quick示例程序 12

1.6 帮助模式 12

1.7 Qt工具简介 13

1.7.1 Qt Assistant 13

1.7.2 Qt Designer 14

1.7.3 Qt Linguist 14

1.7.4 Qt Design Studio 14

1.8 关于本书源码的使用 15

1.9 小结 15

1.10 练习 15

第 2章 第 一个Qt应用 16

2.1 第 一个Qt Widgets应用 16

2.1.1 创建Qt Widgets应用 16

2.1.2 编辑模式和设计模式 17

2.1.3 项目模式和项目文件 20

2.1.4 程序的运行 21

2.1.5 程序的发布 22

2.1.6 程序源码与编译过程详解 24

2.2 第 一个Qt Quick应用 33

2.2.1 创建Qt Quick应用 33

2.2.2 使用Qt资源文件 35

2.2.3 程序的发布 37

2.2.4 创建Qt Quick UI项目 37

2.2.5 使用Qt Quick设计器 38

2.2.6 QML语法基础 39

2.3 设置应用程序图标 41

2.4 小结 41

2.5 练习 41

第3章 Qt Widgets窗口部件和Qt Quick控件 42

3.1 Qt Widgets窗口部件 42

3.1.1 基础窗口部件QWidget 42

3.1.2 窗口几何布局 44

3.1.3 QFrame类族 45

3.1.4 按钮部件 46

3.1.5 QLineEdit 47

3.1.6 QAbstractSpinBox 49

3.1.7 QAbstractSlider 50

3.2 对话框QDialog 51

3.2.1 模态和非模态对话框 51

3.2.2 标准对话框 52

3.3 Qt Quick基础可视项目 53

3.3.1 Item 54

3.3.2 Rectangle 56

3.3.3 Text 56

3.3.4 TextInput 57

3.3.5 TextEdit 59

3.4 Qt Quick控件 59

3.4.1 控件基类型Control 60

3.4.2 按钮类控件 61

3.4.3 指示器类控件 63

3.4.4 输入类控件 64

3.4.5 日期类控件 68

3.5 Qt Quick系统对话框 68

3.5.1 颜色对话框ColorDialog 69

3.5.2 文件对话框FileDialog 69

3.5.3 消息对话框MessageDialog 70

3.6 程序调试 70

3.6.1 调试模式 71

3.6.2 单步调试 72

3.6.3 在Qt Widgets程序中使用qDebug()函数 72

3.6.4 在Qt Quick程序中使用console.log()函数 73

3.7 小结 74

3.8 练习 74

第4章 布局管理 75

4.1 Qt Widgets布局管理系统 75

4.1.1 布局管理器简介 75

4.1.2 基本布局管理器 76

4.1.3 栅格布局管理器 76

4.1.4 窗体布局管理器 77

4.1.5 综合使用布局管理器 77

4.1.6 设置部件大小 78

4.1.7 可扩展窗口 78

4.2 Qt Quick布局管理 79

4.2.1 定位器 79

4.2.2 基于锚(anchors)的布局 82

4.2.3 布局管理器 83

4.3 小结 86

4.4 练习 86

第5章 信号和槽 87

5.1 初识Qt Widgets中的信号和槽 87

5.1.1 认识信号和槽 87

5.1.2 自定义对话框 88

5.1.3 在主界面中使用自定义的对话框 89

5.2 信号和槽详解 90

5.2.1 信号和槽典型应用示例 91

5.2.2 信号和槽的关联 92

5.2.3 信号和槽的自动关联 94

5.2.4 信号和槽断开关联 95

5.2.5 信号和槽的高级应用 96

5.3 Qt Quick中的信号和信号处理器 96

5.3.1 概述 96

5.3.2 声明信号 96

5.3.3 信号处理器 97

5.3.4 使用Connections类型和connect()函数 98

5.4 Qt核心机制简介 99

5.4.1 对象模型 99

5.4.2 元对象系统 100

5.4.3 属性系统 101

5.4.4 对象树与拥有权 102

5.5 小结 102

5.6 练习 102

第6章 应用程序主窗口 103

6.1 Qt Widgets应用程序主窗口 103

6.1.1 菜单栏和工具栏 103

6.1.2 中心部件 106

6.1.3 Dock部件 106

6.1.4 状态栏 107

6.1.5 自定义菜单 107

6.2 Qt Quick应用程序主窗口 109

6.2.1 窗口Window 110

6.2.2 应用程序主窗口ApplicationWindow 111

6.2.3 菜单类控件 115

6.2.4 容器类控件 115

6.2.5 弹出类控件 119

6.3 小结 121

6.4 练习 122

第7章 事件系统 123

7.1 Qt Widgets中的事件 123

7.1.1 事件的处理 123

7.1.2 事件的传递 124

7.1.3 鼠标事件和滚轮事件 127

7.1.4 键盘事件 128

7.1.5 定时器事件与随机数 129

7.1.6 拖放操作 131

7.2 Qt Quick事件处理 135

7.2.1 MouseArea 135

7.2.2 鼠标事件MouseEvent和滚轮事件WheelEvent 137

7.2.3 拖放事件DragEvent 138

7.2.4 键盘事件KeyEvent 140

7.2.5 定时器Timer和随机数 142

7.3 小结 143

7.4 练习 143

第8章 界面外观和国际化 144

8.1 Qt Widgets外观样式 144

8.2 Qt样式表 145

8.2.1 使用代码设置样式表 145

8.2.2 在设计模式中设置样式表 145

8.2.3 Qt样式表语法 146

8.2.4 自定义部件外观 148

8.3 Qt Quick控件样式 150

8.3.1 使用控件样式 151

8.3.2 自定义控件 152

8.4 国际化 153

8.4.1 使用Qt Linguist翻译应用程序过程详解 154

8.4.2 使用Qt Creator自动生成翻译文件 157

8.4.3 程序翻译中的相关问题 158

8.5 Qt Quick的国际化 160

8.5.1 简单示例 160

8.5.2 需要注意的问题 161

8.6 小结 163

8.7 练习 164

第9章 图形动画基础 165

9.1 Qt Widgets中的图形动画基础 165

9.1.1 2D绘图 165

9.1.2 重绘事件 166

9.1.3 颜色和画刷 167

9.1.4 渐变填充 168

9.1.5 坐标系统和抗锯齿渲染 169

9.1.6 坐标变换 169

9.1.7 绘制图像 171

9.1.8 动态图片 172

9.2 Qt Widgets中的图形动画框架 173

9.2.1 图形视图框架的结构 173

9.2.2 图形视图框架的坐标系统 177

9.2.3 动画、碰撞检测和图形部件 179

9.2.4 动画框架 181

9.2.5 状态机框架 185

9.3 Qt Quick中的图形动画基础 187

9.3.1 颜色、渐变 187

9.3.2 图片、边界图片和动态图片 188

9.3.3 缩放、旋转和平移变换 190

9.3.4 状态State 191

9.4 Qt Quick中的动画和过渡 193

9.4.1 使用属性动画 194

9.4.2 使用预定义的目标和属性 194

9.4.3 在状态改变时使用过渡 195

9.4.4 使用默认的行为动画 196

9.4.5 使用并行或顺序动画组 197

9.4.6 使用动画师动画 197

9.4.7 控制动画的执行 198

9.5 小结 199

9.6 练习 199

第 10章 数据存储和显示 200

10.1 Qt Widgets中的模型/视图架构 200

10.1.1 模型类 200

10.1.2 视图类 203

10.1.3 委托类 205

10.1.4 项目视图的便捷类 208

10.2 Qt Widgets中的数据库应用 209

10.2.1 数据库简介 209

10.2.2 SQL数据库驱动 209

10.2.3 创建数据库连接 210

10.2.4 执行SQL语句 212

10.2.5 SQL查询模型 214

10.2.6 SQL表格模型 215

10.2.7 SQL关系表格模型 218

10.3 Qt Widgets中的XML应用 218

10.3.1 QXmlStreamReader 219

10.3.2 QXmlStreamWriter 221

10.4 Qt Quick中的模型/视图架构简介 221

10.5 Qt Quick中的数据模型 222

10.5.1 整数作为模型 223

10.5.2 ListModel 223

10.5.3 XmlListModel 225

10.5.4 TableModel 227

10.5.5 其他模型类型 228

10.5.6 在委托中使用必需属性来匹配模型角色 229

10.5.7 LocalStorage 230

10.6 视图类型 231

10.6.1 ListView 231

10.6.2 GridView 234

10.6.3 视图过渡 235

10.7 小结 236

10.8 练习 236

第 11章 Qt图表 237

11.1 在Qt Widgets中使用Qt图表 237

11.1.1 简单示例 237

11.1.2 坐标轴 240

11.1.3 使用外部数据动态创建图表 243

11.2 在Qt Quick中使用Qt图表 246

11.2.1 创建一个图表项目 246

11.2.2 坐标轴 247

11.2.3 图例Legend 250

11.2.4 ChartView 251

11.2.5 使用数据动态创建图表 252

11.2.6 常用图表类型介绍 254

11.3 小结 255

11.4 练习 255

第 12章 Qt数据可视化 256

12.1 在Qt Widgets中使用数据可视化 256

12.1.1 3D柱形图 256

12.1.2 自定义3D场景 257

12.1.3 设置轴标签、柱形标签和轴标题 258

12.1.4 设置3D项的形状 259

12.1.5 设置主题 259

12.1.6 选择模式和切片视图 260

12.1.7 项目模型和数据映射 261

12.1.8 3D散点图和3D曲面图 262

12.2 在Qt Quick中使用数据可视化 263

12.2.1 3D柱形图 263

12.2.2 3D坐标轴 264

12.2.3 数据代理 266

12.2.4 3D系列 267

12.2.5 自定义3D场景 267

12.2.6 设置主题 268

12.2.7 选择模式和切片视图 270

12.2.8 3D散点图 270

12.2.9 3D曲面图 271

12.3 小结 273

12.4 练习 273

第 13章 多媒体应用 274

13.1 Qt Widgets中的多媒体应用 274

13.1.1 播放音频 275

13.1.2 播放视频 276

13.1.3 QMediaPlayer 277

13.1.4 使用相机 282

13.1.5 录制音频 285

13.2 Qt Quick中的多媒体应用 287

13.2.1 播放压缩音频 288

13.2.2 播放未压缩音频 289

13.2.3 播放视频 290

13.2.4 媒体捕获相关类型 291

13.2.5 使用ImageCapture进行拍照 291

13.2.6 使用MediaRecorder进行音视频录制 292

13.3 小结 294

13.4 练习 294

第 14章 QML与C 混合开发 295

14.1 概述 295

14.2 在QML类型系统中注册C 类型 295

14.2.1 基于宏的注册方式 296

14.2.2 注册值类型 299

14.2.3 注册不可实例化的对象类型 299

14.2.4 注册单例类型 300

14.2.5 类型的修订和版本 300

14.3 Qt QML模块提供的C 类 301

14.3.1 QQmlEngine、QQmlApplicationEngine和QQuickView 301

14.3.2 QQmlContext 302

14.3.3 QQmlComponent 303

14.3.4 QQmlExpression 304

14.4 小结 304

14.5 练习 305

附录A QML语法速查 306

A.1 import导入语句 306

A.1.1 模块(命名空间)导入语句 306

A.1.2 目录导入语句 307

A.1.3 JavaScript资源导入语句 308

A.2 QML类型系统 308

A.2.1 基本类型 308

A.2.2 JavaScript类型 309

A.2.3 对象类型 310

A.3 对象特性(Attributes) 310

A.3.1 id特性 310

A.3.2 属性特性 310

A.3.3 信号和信号处理器特性 315

A.3.4 方法特性 315

A.3.5 附加属性和附加信号处理器特性 316

A.3.6 枚举特性 317

A.4 属性绑定 317

A.4.1 一般绑定 318

A.4.2 使用binding() 319

A.5 QML文档 319

A.5.1 通过QML文档定义对象类型 319

A.5.2 QML组件 320

A.6 QML模块 322

A.6.1 定义一个QML模块 322

A.6.2 通过C 插件提供类型和功能 322

附录B CMake简介 323

B.1 构建控制台应用 323

B.2 构建Qt Widgets应用 324

B.3 构建Qt Quick应用 325

B.4 小结 326

展开全部

作者简介

霍亚飞(网名:yafeilinux),从事嵌入式软件开发工作十余年,于 2012 年创办 Qt 开源社区,长期致力于 Qt 及开源项目的推广和普及。著有《Qt Creator 快速入门》《Qt 5 编程入门》《Qt 及Qt Quick 开发实战精解》《QML 和 Qt Quick 快速入门》等多部图书。

预估到手价 ×

预估到手价是按参与促销活动、以最优惠的购买方案计算出的价格(不含优惠券部分),仅供参考,未必等同于实际到手价。

确定
快速
导航