《Qt5开发及实例 第3版》PDF下载

  • 购买积分:20 如何计算积分?
  • 作  者:陆文周主编
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2017
  • ISBN:9787121316982
  • 页数:726 页
图书介绍:Qt是软件开发领域非常著名的C++可视化开发平台,目前最新版本为Qt 5.8。本书以Qt 5.8为平台,介绍Qt环境、模板库工具类及控件、布局管理、基本对话框、主窗体、图形与图片、图形视图框架、模型/视图结构、文件及磁盘处理、网络与通信、事件处理及实例、多线程、数据库、多国语言国际化、单元测试框架、QML编程基础、QML动画特效、Qt Quick Controls开发基础和Qt Quick Controls 2新颖界面开发。每个章节在简单介绍开发环境的基础上,用一个小实例介绍Qt4应用程序开发的各个方面,然后系统介绍Qt应用程序开发技术,通过实例介绍来理解内容。最后利用综合实例应用Qt 主要内容。综合实例包括汽车销售管理系统、Qt版Word字处理软件、Qt版聊天软件、和多功能文档查看器。本书在保持前面版本特点的基础上,重新整编原有内容、重新构建和调试所有实例,同时将Qt 5.5和Qt 5.8新组件和功能的融入其中,同步配套相应的实例,对新增加的Qt Quick Controls 2专门增加一章进行介绍。通过几个大综合实例应用Qt主要内容。本书介绍内容时使用了很多实例,为了方便读者上机练

第1章 Qt概述 1

1.1 什么是Qt 1

1.2 Qt 5的安装 2

1.2.1 下载安装Qt 5 2

1.2.2 运行Qt 5 Creator 5

1.2.3 Qt 5开发环境 6

1.3 Qt 5开发步骤及实例 8

1.3.1 设计器Qt 5 Designer实现 8

1.3.2 代码实现简单实例 15

L1.2 Qt 5安装:概念解析 18

伙伴编辑模式(Edit Buddies) 18

L1.3 Qt 5开发步骤及实例:概念解析 19

L1 信号和槽机制(Signal&Slot) 19

L2 Qt 5元对象系统 21

L3 布局管理器 21

第2章 Qt 5模板库、工具类及控件 22

2.1 字符串类 22

2.1.1 操作字符串 22

2.1.2 查询字符串数据 24

2.1.3 字符串的转换 24

2.2 容器类 26

2.2.1 QList类、QLinkedList类和QVector类 26

2.2.2 QMap类和QHash类 32

2.3 QVariant类 35

2.4 算法及正则表达式 37

2.4.1 Qt 5常用算法 37

2.4.2 基本的正则表达式 38

2.5 控件 39

2.5.1 按钮组(Buttons) 40

2.5.2 输入部件组(Input Widgets) 41

2.5.3 显示控件组(Display Widgets) 43

2.5.4 空间间隔组(Spacers) 44

2.5.5 布局管理组(Layouts) 44

2.5.6 容器组(Containers) 44

2.5.7 项目视图组(Item Views) 47

2.5.8 项目控件组(Item Widgets) 49

2.5.9 小综合例子 53

L2.1 字符串类QString:概念解析 56

L1 隐式共享 56

L2 内存分配策略 58

L2.5 Qt 5控件:概念解析 58

Qt::WindowFlags枚举类型 58

第3章 Qt 5布局管理 61

3.1 分割窗口QSplitter类 61

3.2 停靠窗口QDockWidget类 63

3.3 堆栈窗体QStackedWidget类 66

3.4 基本布局(QLayout) 69

3.5 【综合实例】:修改用户资料 74

第4章 Qt 5基本对话框 86

4.1 标准文件对话框类 90

4.1.1 函数说明 90

4.1.2 创建步骤 91

4.2 标准颜色对话框类 92

4.2.1 函数说明 92

4.2.2 创建步骤 92

4.3 标准字体对话框类 93

4.3.1 函数说明 93

4.3.2 创建步骤 94

4.4 标准输入对话框类 94

4.4.1 标准字符串输入对话框 98

4.4.2 标准条目选择对话框 98

4.4.3 标准int类型输入对话框 99

4.4.4 标准double类型输入对话框 100

4.5 消息对话框类 101

4.5.1 Question消息框 104

4.5.2 Information消息框 105

4.5.3 Warning消息框 105

4.5.4 Critical消息框 106

4.5.5 About消息框 107

4.5.6 About Qt消息框 107

4.6 自定义消息框 108

4.7 工具盒类 109

4.8 进度条 114

4.9 调色板与电子钟 118

4.9.1 QPalette类 118

4.9.2 QTime类 124

4.9.3 【综合实例】:电子时钟 125

4.10 可扩展对话框 128

4.11 不规则窗体 131

4.12 程序启动画面(QSplashScreen) 134

第5章 Qt 5主窗口 137

5.1 Qt 5主窗口构成 137

5.1.1 基本元素 137

5.1.2 【综合实例】:文本编辑器 138

5.1.3 菜单与工具栏的实现 142

5.2 Qt 5文件操作功能 147

5.2.1 新建文件 147

5.2.2 打开文件 148

5.2.3 打印文件 150

5.3 Qt 5图像坐标变换 153

5.3.1 缩放功能 153

5.3.2 旋转功能 154

5.3.3 镜像功能 156

5.4 Qt 5文本编辑功能 157

5.4.1 设置字体 160

5.4.2 设置字号 161

5.4.3 设置文字加粗 161

5.4.4 设置文字斜体 161

5.4.5 设置文字加下画线 162

5.4.6 设置文字颜色 162

5.4.7 设置字符格式 163

5.5 Qt 5排版功能 163

5.5.1 实现段落对齐 164

5.5.2 实现文本排序 165

第6章 Qt 5图形与图片 169

6.1 Qt 5位置相关函数 169

6.1.1 区别概述 169

6.1.2 【实例】:位置函数的使用 170

6.2 Qt 5基础图形的绘制 174

6.2.1 绘图框架设计 174

6.2.2 绘图区的实现 175

6.2.3 主窗口的实现 180

6.3 Qt 5双缓冲机制 193

6.3.1 原理与设计 193

6.3.2 绘图区的实现 195

6.3.3 主窗口的实现 198

6.4 显示Qt 5 SVG格式图片 201

L6.4 Qt 5 SVG格式图片显示:概念解析 207

XML 207

第7章 Qt 5图形视图框架 209

7.1 图形视图体系结构 209

7.1.1 Graphics View的特点 209

7.1.2 Graphics View的三元素 209

7.1.3 Graphics View的坐标系统 211

7.2 【实例】:图形视图 213

7.2.1 飞舞的蝴蝶 213

7.2.2 地图浏览器 216

7.2.3 图元创建 222

7.2.4 图元的旋转、缩放、切变和位移 232

第8章 Qt 5模型/视图结构 239

8.1 概述 239

8.1.1 基本概念 240

8.1.2 【实例】:模型/视图类使用 240

8.2 模型(Model) 242

8.3 视图(View) 246

8.4 代理(Delegate) 259

第9章 Qt 5文件及磁盘处理 268

9.1 读写文本文件 268

9.1.1 QFile类读写文本 268

9.1.2 QTextStream类读写文本 270

9.2 读写二进制文件 272

9.3 目录操作与文件系统 274

9.3.1 文件大小及路径获取实例 274

9.3.2 文件系统浏览 276

9.4 获取文件信息 280

9.5 监视文件和目录变化 284

第10章 Qt 5网络与通信 287

10.1 获取本机网络信息 287

10.2 基于UDP的网络广播程序 291

10.2.1 UDP协议工作原理 291

10.2.2 UDP编程模型 291

10.2.3 【实例】:UDP服务器编程 292

10.2.4 【实例】:UDP客户端编程 294

10.3 基于TCP的网络聊天室程序 297

10.3.1 TCP协议工作原理 298

10.3.2 TCP编程模型 298

10.3.3 【实例】:TCP服务器编程 299

10.3.4 【实例】:TCP客户端编程 305

10.4 Qt网络应用开发初步 310

10.4.1 【实例】:简单网页浏览器 311

10.4.2 文件下载实例 312

第11章 Qt 5事件处理及实例 316

11.1 鼠标事件及实例 316

11.2 键盘事件及实例 319

11.3 事件过滤及实例 325

第12章 Qt 5多线程 331

12.1 多线程及简单实例 331

12.2 多线程控制 335

12.2.1 互斥量 336

12.2.2 信号量 337

12.2.3 线程等待与唤醒 341

12.3 多线程应用 344

12.3.1 【实例】:服务器编程 344

12.3.2 【实例】:客户端编程 349

第13章 Qt 5数据库 354

13.1 数据库基本概念 354

13.2 常用SQL命令 357

13.2.1 数据查询 357

13.2.2 数据操作 361

13.3 Qt操作数据库及实例 362

13.3.1 Qt操作SQLite数据库 363

13.3.2 Qt操作主/从视图及XML 369

第14章 Qt 5多国语言国际化 400

14.1 基本概念 400

14.1.1 国际化支持的实现 400

14.1.2 翻译工作:“*.qm”文件的生成 401

14.2 【实例】:国际化测试 402

14.2.1 简单测试 402

14.2.2 选择语言翻译文字 406

第15章 Qt 5单元测试框架 411

15.1 QTestLib框架 411

15.2 简单的Qt单元测试 411

15.3 数据驱动测试 416

15.4 简单性能测试 419

第16章 【综合实例】:汽车销售管理系统 421

16.1 功能介绍与界面设计 421

16.1.1 功能简介 421

16.1.2 主界面设计 422

16.1.3 菜单设计 423

16.2 实现品牌车管理功能 425

16.2.1 出售车辆 425

16.2.2 日销售清单 431

16.3 销售统计图表功能 436

16.3.1 视图设计 436

16.3.2 界面设计 440

16.4 添加登录界面 443

第17章 【综合实例】:Qt版Word字处理软件 447

17.1 核心功能界面演示 447

17.2 界面设计与开发 448

17.2.1 建立MDI程序框架 449

17.2.2 菜单系统设计 453

17.2.3 工具栏设计 464

17.2.4 子窗口管理 468

17.2.5 界面生成试运行 475

17.3 基本编辑功能实现 479

17.3.1 打开文件 479

17.3.2 保存文件 482

17.3.3 文本操作 485

17.4 文档排版美化功能实现 487

17.4.1 字体格式设置 487

17.4.2 段落对齐设置 490

17.4.3 颜色设置 491

17.4.4 段落标号、编号 492

17.4.5 文档打印与预览 495

第18章 【综合实例】:Qt版聊天软件 498

18.1 核心功能界面演示 498

18.2 界面设计与开发 499

18.2.1 创建“抽屉盒” 499

18.2.2 设计聊天窗口 504

18.2.3 将图片按钮与聊天窗口关联 506

18.3 基本聊天会话功能实现 511

18.3.1 基本原理 511

18.3.2 消息类型与UDP广播 512

18.3.3 会话过程的处理 516

18.3.4 聊天程序试运行 518

18.4 文件传输功能实现 519

18.4.1 需求方案 519

18.4.2 服务器开发 520

18.4.3 客户端开发 526

18.4.4 主界面的控制 531

18.4.5 文件传输试验 534

18.5 附加功能实现 535

18.5.1 更改字体、字号和颜色 535

18.5.2 字体切换 537

18.5.3 保存和清除聊天记录 538

第19章 QML编程基础 540

19.1 QML概述 540

19.1.1 第一个QML程序 540

19.1.2 QML文档构成 543

19.1.3 QML基本语法 544

19.2 QML可视元素 547

19.2.1 Rectangle(矩形)元素 547

19.2.2 Image(图像)元素 549

19.2.3 Text(文本)元素 550

19.2.4 自定义元素(组件) 552

19.3 QML元素布局 555

19.3.1 Positioner(定位器) 555

19.3.2 Anchor(锚) 559

19.4 QML事件处理 564

19.4.1 鼠标事件 564

19.4.2 键盘事件 566

19.4.3 输入控件与焦点 569

19.5 QML集成JavaScript 571

19.5.1 调用JavaScript函数 571

19.5.2 导入JS文件 573

第20章 QML动画特效 576

20.1 QML动画元素 576

20.1.1 PropertyAnimation元素 576

20.1.2 其他动画元素 581

20.1.3 Animator元素 583

20.2 动画流UI界面 585

20.2.1 状态和切换 586

20.2.2 设计组合动画 589

20.3 图像特效 592

20.3.1 3D旋转 592

20.3.2 色彩处理 594

20.4 Qt 5.5(Qt Quick Extras 1.4)新增饼状菜单 596

第21章 Qt Quick Controls开发基础 599

21.1 Qt Quick Controls概述 599

21.1.1 第一个Qt Quick Controls程序 599

21.1.2 Qt Quick窗体应用程序的构成 601

21.2 Qt Quick控件 606

21.2.1 概述 606

21.2.2 基本控件 607

21.2.3 高级控件 612

21.2.4 样式定制 617

21.3 Qt Quick对话框 625

21.4 Qt Quick导航视图 631

21.5 Qt 5.5 (Qt Quick Controls 1.4)新增组件 636

第22章 Qt Quick Controls 2新颖界面开发 641

22.1 Qt Quick Controls 2简介 641

22.1.1 第一个Qt Quick Controls 2程序 642

22.1.2 Qt Quick Controls 2程序的构成 645

22.2 Qt Quick Controls 2与1的比较 649

22.2.1 ApplicationWindow结构不同 649

22.2.2 Menu不支持窗口主菜单 653

22.2.3 控件实现差异 655

22.3 滑动翻页及隐藏面板 660

22.4 选项列表 665

22.5 带功能按钮的列表 669

第23章 【综合实例】:多功能文档查看器 676

23.1 核心功能界面演示 676

23.2 界面与程序框架设计 678

23.2.1 准备应用资源 679

23.2.2 主程序代码框架 680

23.3 浏览网页功能实现 687

23.3.1 实现HtmlHandler处理器 687

23.3.2 编写Action 692

23.3.3 定义主显示区元素 692

23.3.4 实现“打开网页”对话框 692

23.4 阅读文本功能实现 693

23.4.1 实现TextHandler处理器 694

23.4.2 编写Action 697

23.4.3 定义主显示区元素 698

23.4.4 实现“打开文本”对话框 699

23.5 查看图片功能实现 700

23.5.1 编写Action 700

23.5.2 定义主显示区元素 701

23.5.3 实现“打开图片”对话框 702

23.5.4 对图片的处理 703

附录A C++相关知识 705

A.1 C++程序结构 705

A.2 C++预处理 706

A.3 C++异常处理 708

A.4 C++面向对象编程 711

附录B Qt 5简单调试 721

B.1 修正语法错误 721

B.2 设置断点 722

B.3 程序调试运行 722

B.4 查看和修改变量的值 723

B.5 qDebug()的用法 726