Qt 5.9 C++开发指南

Qt 5.9 C++开发指南
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者: , ,
2018-05
版次: 1
ISBN: 9787115478689
定价: 89.00
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 459页
正文语种: 简体中文
441人买过
  • 本书以Qt 5.9 LTS版本为开发平台,详细介绍了Qt C++开发应用程序的技术,包括Qt应用程序的基本架构、信号与槽工作机制、图形显示的Graphics/View架构、数据编辑和显示的Model/View架构、对话框和多窗口的设计与调用方法等,介绍了常用界面组件、文件读写、绘图、图表、数据可视化、数据库、多线程、网络和多媒体等模块的使用。每个编程主题都精心设计了完整的实例程序。

    通过阅读本书,可了解Qt C++开发应用程序所需的基本技术。本书适合具有C++语言编程基础,希望应用Qt C++开发跨平台应用程序的读者阅读。 王维波,博士,主要从事地球物理探测仪器设计、数据处理方法研究和软件开发等工作,精通软硬件设计与开发。在实际研究和开发工作中发现Qt之利、Qt之美,与读者分享Qt开发经验。

    栗宝鹃,博士,主要从事地球物理数据处理和成像的研究,在研究工作中将Qt用于专业软件的开发,精通Qt学习之道、应用之道。

    侯春望,硕士,主要从事单片机系统和应用软件的教学和研究工作,精通Qt C++编程,曾开发多个专业应用软件。 目  录

    第 1章 认识Qt 1

    1.1 Qt简介 1

    1.2 Qt的获取与安装 1

    1.2.1 Qt的许可类型 1

    1.2.2 Qt的版本 2

    1.2.3 Qt的下载与安装 2

    1.3 Qt Creator初步使用 5

    1.3.1 Qt Creator的界面组成 5

    1.3.2 Qt Creator的设置 6

    1.4 编写一个Hello World程序 7

    1.4.1 新建一个项目 7

    1.4.2 项目的文件组成和管理 10

    1.4.3 项目的编译、调试与运行 11

    1.5 在Visual Studio里使用Qt 13

    第 2章 GUI应用程序设计基础 16

    2.1 UI文件设计与运行机制 16

    2.1.1 项目文件组成 16

    2.1.2 项目管理文件 16

    2.1.3 界面文件 17

    2.1.4 主函数文件 19

    2.1.5 窗体相关的文件 20

    2.2 可视化UI设计 25

    2.2.1 实例程序功能 26

    2.2.2 界面组件布局 26

    2.2.3 信号与槽 29

    2.2.4 可视化生成槽函数原型和

    框架 30

    2.3 代码化UI设计 34

    2.3.1 实例功能 34

    2.3.2 界面创建 34

    2.3.3 信号与槽的关联 37

    2.4 混合方式UI设计 37

    2.4.1 设计目的 37

    2.4.2 创建项目并添加资源文件 38

    2.4.3 设计Action 39

    2.4.4 设计菜单和工具栏 41

    2.4.5 代码创建其他界面组件 44

    2.4.6 Action的功能实现 45

    2.4.7 手工创建的组件的

    信号与槽 47

    2.4.8 为应用程序设置图标 48

    2.5 Qt Creator使用技巧 48

    第3章 Qt类库概述 50

    3.1 Qt核心特点 50

    3.1.1 概述 50

    3.1.2 元对象系统 50

    3.1.3 属性系统 52

    3.1.4 信号与槽 53

    3.1.5 元对象特性测试实例 55

    3.2 Qt全局定义 59

    3.2.1 数据类型定义 60

    3.2.2 函数 60

    3.2.3 宏定义 61

    3.3 容器类 62

    3.3.1 容器类概述 62

    3.3.2 顺序容器类 63

    3.3.3 关联容器类 64

    3.4 容器类的迭代 66

    3.4.1 Java类型迭代器 66

    3.4.2 STL类型迭代器 68

    3.4.3 foreach关键字 69

    3.5 Qt类库的模块 70

    3.5.1 Qt基本模块 71

    3.5.2 Qt附加模块 71

    3.5.3 增值模块 72

    3.5.4 技术预览模块 72

    3.5.5 Qt工具 73

    第4章 常用界面设计组件 74

    4.1 字符串与输入输出 74

    4.1.1 字符串与数值之间的转换 74

    4.1.2 QString的常用功能 76

    4.2 SpinBox的使用 78

    4.3 其他数值输入和显示组件 80

    4.3.1 实例功能 80

    4.3.2 各组件的主要功能和属性 80

    4.3.3 实例功能的代码实现 82

    4.4 时间日期与定时器 84

    4.4.1 时间日期相关的类 84

    4.4.2 日期时间数据与字符串之间的

    转换 84

    4.4.3 QCalendarWidget日历组件 87

    4.4.4 定时器的使用 87

    4.5 QComboBox和QPlainTextEdit 89

    4.5.1 实例功能概述 89

    4.5.2 QComboBox的使用 89

    4.5.3 QPlainTextEdit的使用 91

    4.6 QListWidget和QToolButton 93

    4.6.1 实例功能简介 93

    4.6.2 界面设计 94

    4.6.3 QListWidget的操作 97

    4.6.4 QToolButton与下拉式

    菜单 99

    4.6.5 创建右键快捷菜单 101

    4.7 QTreeWidget和QDockWidget 102

    4.7.1 实例功能概述 102

    4.7.2 界面设计 103

    4.7.3 QTreeWidget操作 105

    4.7.4 QLabel和Qpixmap

    显示图片 110

    4.7.5 QDockWidget的操作 111

    4.8 QTableWidget的使用 112

    4.8.1 QTableWidget概述 112

    4.8.2 界面设计与初始化 113

    4.8.3 QTableWidget操作 114

    第5章 Model/View结构 120

    5.1 Model/View结构 120

    5.1.1 Model/View基本原理 120

    5.1.2 数据模型 121

    5.1.3 视图组件 122

    5.1.4 代理 122

    5.1.5 Model/View结构的一些

    概念 123

    5.2 QFileSystemModel 125

    5.2.1 QFileSystemModel类的

    基本功能 125

    5.2.2 QFileSystemModel的

    使用 125

    5.3 QStringListModel 127

    5.3.1 QstringListModel

    功能概述 127

    5.3.2 QStringListModel的使用 127

    5.4 QStandardItemModel 130

    5.4.1 功能概述 130

    5.4.2 界面设计与主窗口类

    定义 131

    5.4.3 QStandardItemModel的

    使用 132

    5.5 自定义代理 139

    5.5.1 自定义代理的功能 139

    5.5.2 自定义代理类的基本

    设计要求 139

    5.5.3 基于QSpinBox的自定义

    代理类 139

    5.5.4 自定义代理类的使用 141

    第6章 对话框与多窗体设计 143

    6.1 标准对话框 143

    6.1.1 概述 143

    6.1.2 QFileDialog对话框 144

    6.1.3 QColorDialog对话框 146

    6.1.4 QFontDialog对话框 146

    6.1.5 QInputDialog标准输入

    对话框 147

    6.1.6 QMessageBox消息对话框 149

    6.2 自定义对话框及其调用 150

    6.2.1 对话框的不同调用方式 150

    6.2.2 对话框QWDialogSize的

    创建和使用 152

    6.2.3 对话框QWDialogHeaders的

    创建和使用 154

    6.2.4 对话框QWDialogLocate的

    创建与使用 156

    6.2.5 利用信号与槽实现交互

    操作 160

    6.3 多窗体应用程序设计 162

    6.3.1 主要的窗体类及其用途 162

    6.3.2 窗体类重要特性的设置 163

    6.3.3 多窗口应用程序的设计 165

    6.4 MDI应用程序设计 170

    6.4.1 MDI简介 170

    6.4.2 文档窗口类QFormDoc的

    设计 171

    6.4.3 MDI主窗口设计与子窗口的

    使用 173

    6.5 Splash与登录窗口 176

    6.5.1 实例功能概述 176

    6.5.2 对话框界面设计和类

    定义 177

    6.5.3 QDlgLogin类功能实现 178

    6.5.4 Splash登录窗口的使用 181

    第7章 文件系统和文件读写 182

    7.1 文本文件读写 182

    7.1.1 实例功能概述 182

    7.1.2 QFile读写文本文件 182

    7.1.3 QFile和QTextStream结合

    读写文本文件 184

    7.1.4 解决中文乱码的问题 185

    7.2 二进制文件读写 186

    7.2.1 实例功能概述 186

    7.2.2 Qt预定义编码文件的读写 187

    7.2.3 标准编码文件的读写 192

    7.3 文件目录操作 197

    7.3.1 文件目录操作相关的类 197

    7.3.2 实例概述 197

    7.3.3 QCoreApplication类 199

    7.3.4 QFile类 199

    7.3.5 QFileInfo类 200

    7.3.6 QDir类 201

    7.3.7 QTemporaryDir和

    QTemporaryFile 203

    7.3.8 QFileSystemWatcher类 203

    第8章 绘图 206

    8.1 QPainter基本绘图 206

    8.1.1 QPainter绘图系统 206

    8.1.2 QPen的主要功能 209

    8.1.3 QBrush的主要功能 210

    8.1.4 渐变填充 212

    8.1.5 QPainter绘制基本图形

    元件 214

    8.2 坐标系统和坐标变换 217

    8.2.1 坐标变换函数 217

    8.2.2 坐标变换绘图实例 218

    8.2.3 视口和窗口 221

    8.2.4 绘图叠加的效果 223

    8.3 Graphics View绘图架构 224

    8.3.1 场景、视图与图形项 224

    8.3.2 Graphics View的坐标

    系统 226

    8.3.3 Graphics View相关的类 227

    8.3.4 Graphics View程序基本结构

    和功能实现 229

    8.3.5 Graphics View绘图程序

    实例 235

    第9章 Qt Charts 247

    9.1 Qt Charts概述 247

    9.1.1 Qt Charts模块 247

    9.1.2 一个简单的QChart绘图

    程序 248

    9.1.3 图表的主要组成部分 249

    9.2 QChart绘制折线图 253

    9.2.1 实例功能 253

    9.2.2 主窗口类定义和初始化 253

    9.2.3 画笔设置对话框

    QWDialogPen 256

    9.2.4 QChart的设置 257

    9.2.5 QLineSeries序列的设置 259

    9.2.6 QValueAxis坐标轴的

    设置 261

    9.3 各种常见图表的绘制 263

    9.3.1 实例功能概述 263

    9.3.2 数据准备 264

    9.3.3 柱状图 267

    9.3.4 饼图 270

    9.3.5 堆叠柱状图 273

    9.3.6 百分比柱状图 274

    9.3.7 散点图和光滑曲线图 276

    9.4 图表的其他操作 277

    9.4.1 实例功能概述 277

    9.4.2 自定义QWChartView类 278

    9.4.3 主窗口类的设计 280

    9.4.4 实时显示光标处的数值 281

    9.4.5 QLegendMarker的使用 282

    9.4.6 图表的缩放 283

    第 10章 Data Visualization 284

    10.1 Data Visualization模块概述 284

    10.2 三维柱状图 285

    10.2.1 实例功能 285

    10.2.2 主窗口设计 286

    10.2.3 三维柱状图的创建 287

    10.2.4 三维柱状图属性设置 289

    10.3 三维散点图 293

    10.3.1 绘制三维散点图 293

    10.3.2 三维坐标轴的方向 296

    10.3.3 散点形状与大小 296

    10.4 三维曲面绘图 296

    10.4.1 三维曲面图 296

    10.4.2 三维地形图 301

    第 11章 数据库 305

    11.1 Qt SQL模块概述 305

    11.1.1 Qt SQL支持的数据库 305

    11.1.2 SQLite数据库 306

    11.1.3 Qt SQL模块的主要类 308

    11.2 QSqlTableModel的使用 309

    11.2.1 实例功能 309

    11.2.2 主窗口设计 310

    11.2.3 打开数据表 311

    11.2.4 添加、插入与删除记录 319

    11.2.5 保存与取消修改 319

    11.2.6 设置和清除照片 320

    11.2.7 数据记录的遍历 321

    11.2.8 记录排序 322

    11.2.9 记录过滤 322

    11.3 QSqlQueryModel的使用 323

    11.3.1 QSqlQueryModel功能

    概述 323

    11.3.2 使用QSqlQueryModel实现

    数据查询 323

    11.4 QSqlQuery的使用 327

    11.4.1 QSqlQuery基本用法 327

    11.4.2 QSqlQueryModel和

    QSqlQuery联合使用 328

    11.5 QSqlRelationalTableModel的

    使用 336

    11.5.1 关系型数据表和实例

    功能 336

    11.5.2 关系型数据模型功能

    实现 338

    第 12章 自定义插件和库 340

    12.1 自定义Widget组件 340

    12.1.1 自定义Widget子类

    QmyBattery 340

    12.1.2 自定义Widget组件的

    使用 343

    12.2 自定义Qt Designer插件 344

    12.2.1 创建Qt Designer Widget插件项目 344

    12.2.2 插件项目各文件的功能

    实现 346

    12.2.3 插件的编译与安装 349

    12.2.4 使用自定义插件 350

    12.2.5 使用MSVC编译器输出

    中文的问题 352

    12.3 创建和使用静态链接库 353

    12.3.1 创建静态链接库 353

    12.3.2 静态链接库的使用 354

    12.4 创建和使用共享库 357

    12.4.1 创建共享库 357

    12.4.2 使用共享库 358

    第 13章 多线程 362

    13.1 QThread创建多线程程序 362

    13.1.1 QThread类功能简介 362

    13.1.2 掷骰子的线程

    QDiceThread 363

    13.1.3 掷骰子的多线程应用

    程序 365

    13.2 线程同步 367

    13.2.1 线程同步的概念 367

    13.2.2 基于互斥量的线程同步 368

    13.2.3 基于QReadWriteLock的

    线程同步 371

    13.2.4 基于QWaitCondition的

    线程同步 373

    13.2.5 基于信号量的线程同步 377

    第 14章 网络编程 383

    14.1 主机信息查询 383

    14.1.1 QHostInfo和

    QNetworkInterface类 383

    14.1.2 QHostInfo的使用 384

    14.1.3 QNetworkInterface的

    使用 386

    14.2 TCP通信 388

    14.2.1 TCP通信概述 388

    14.2.2 TCP服务器端程序

    设计 390

    14.2.3 TCP客户端程序设计 395

    14.3 QUdpSocket实现UDP通信 397

    14.3.1 UDP通信概述 397

    14.3.2 UDP单播和广播 398

    14.3.3 UDP组播 402

    14.4 基于HTTP协议的网络应用

    程序 405

    14.4.1 实现高层网络操作的类 405

    14.4.2 基于HTTP协议的网络

    文件下载 406

    第 15章 多媒体 409

    15.1 Qt多媒体模块功能概述 409

    15.2 音频播放 410

    15.2.1 使用QMediaPlayer播放

    音乐文件 410

    15.2.2 使用QSoundEffect和Qsound

    播放音效文件 415

    15.3 音频输入 415

    15.3.1 使用QAudioRecorder

    录制音频 415

    15.3.2 使用QAudioInput获取

    音频输入 421

    15.4 视频播放 428

    15.4.1 在QVideoWidget上播放

    视频 428

    15.4.2 在QGraphicsVideoItem上

    播放视频 431

    15.5 摄像头的使用 433

    15.5.1 摄像头控制概述 433

    15.5.2 实例主窗口设计与初始化 435

    15.5.3 QCamera对象创建与控制 436

    15.5.4 QCameraImageCapture抓取静态图片 438

    15.5.5 QMediaRecorder视频录制 439

    第 16章 应用程序设计辅助功能 441

    16.1 多语言界面 441

    16.1.1 多语言界面设计概述 441

    16.1.2 tr()函数的使用 441

    16.1.3 生成语言翻译文件 442

    16.1.4 使用Qt Linguist翻译ts文件 443

    16.1.5 调用翻译文件改变界面语言 444

    16.2 使用样式表自定义界面 446

    16.2.1 Qt样式表 446

    16.2.2 Qt样式表句法 447

    16.2.3 样式表的使用 453

    16.3 使用QStyle设置界面外观 455

    16.3.1 QStyle的作用 455

    16.3.2 Qt内置样式的使用 456

    16.4 Qt应用程序的发布 457

    16.4.1 应用程序发布方式 457

    16.4.2 Windows平台上的应用程序发布 458
  • 内容简介:
    本书以Qt 5.9 LTS版本为开发平台,详细介绍了Qt C++开发应用程序的技术,包括Qt应用程序的基本架构、信号与槽工作机制、图形显示的Graphics/View架构、数据编辑和显示的Model/View架构、对话框和多窗口的设计与调用方法等,介绍了常用界面组件、文件读写、绘图、图表、数据可视化、数据库、多线程、网络和多媒体等模块的使用。每个编程主题都精心设计了完整的实例程序。

    通过阅读本书,可了解Qt C++开发应用程序所需的基本技术。本书适合具有C++语言编程基础,希望应用Qt C++开发跨平台应用程序的读者阅读。
  • 作者简介:
    王维波,博士,主要从事地球物理探测仪器设计、数据处理方法研究和软件开发等工作,精通软硬件设计与开发。在实际研究和开发工作中发现Qt之利、Qt之美,与读者分享Qt开发经验。

    栗宝鹃,博士,主要从事地球物理数据处理和成像的研究,在研究工作中将Qt用于专业软件的开发,精通Qt学习之道、应用之道。

    侯春望,硕士,主要从事单片机系统和应用软件的教学和研究工作,精通Qt C++编程,曾开发多个专业应用软件。
  • 目录:
    目  录

    第 1章 认识Qt 1

    1.1 Qt简介 1

    1.2 Qt的获取与安装 1

    1.2.1 Qt的许可类型 1

    1.2.2 Qt的版本 2

    1.2.3 Qt的下载与安装 2

    1.3 Qt Creator初步使用 5

    1.3.1 Qt Creator的界面组成 5

    1.3.2 Qt Creator的设置 6

    1.4 编写一个Hello World程序 7

    1.4.1 新建一个项目 7

    1.4.2 项目的文件组成和管理 10

    1.4.3 项目的编译、调试与运行 11

    1.5 在Visual Studio里使用Qt 13

    第 2章 GUI应用程序设计基础 16

    2.1 UI文件设计与运行机制 16

    2.1.1 项目文件组成 16

    2.1.2 项目管理文件 16

    2.1.3 界面文件 17

    2.1.4 主函数文件 19

    2.1.5 窗体相关的文件 20

    2.2 可视化UI设计 25

    2.2.1 实例程序功能 26

    2.2.2 界面组件布局 26

    2.2.3 信号与槽 29

    2.2.4 可视化生成槽函数原型和

    框架 30

    2.3 代码化UI设计 34

    2.3.1 实例功能 34

    2.3.2 界面创建 34

    2.3.3 信号与槽的关联 37

    2.4 混合方式UI设计 37

    2.4.1 设计目的 37

    2.4.2 创建项目并添加资源文件 38

    2.4.3 设计Action 39

    2.4.4 设计菜单和工具栏 41

    2.4.5 代码创建其他界面组件 44

    2.4.6 Action的功能实现 45

    2.4.7 手工创建的组件的

    信号与槽 47

    2.4.8 为应用程序设置图标 48

    2.5 Qt Creator使用技巧 48

    第3章 Qt类库概述 50

    3.1 Qt核心特点 50

    3.1.1 概述 50

    3.1.2 元对象系统 50

    3.1.3 属性系统 52

    3.1.4 信号与槽 53

    3.1.5 元对象特性测试实例 55

    3.2 Qt全局定义 59

    3.2.1 数据类型定义 60

    3.2.2 函数 60

    3.2.3 宏定义 61

    3.3 容器类 62

    3.3.1 容器类概述 62

    3.3.2 顺序容器类 63

    3.3.3 关联容器类 64

    3.4 容器类的迭代 66

    3.4.1 Java类型迭代器 66

    3.4.2 STL类型迭代器 68

    3.4.3 foreach关键字 69

    3.5 Qt类库的模块 70

    3.5.1 Qt基本模块 71

    3.5.2 Qt附加模块 71

    3.5.3 增值模块 72

    3.5.4 技术预览模块 72

    3.5.5 Qt工具 73

    第4章 常用界面设计组件 74

    4.1 字符串与输入输出 74

    4.1.1 字符串与数值之间的转换 74

    4.1.2 QString的常用功能 76

    4.2 SpinBox的使用 78

    4.3 其他数值输入和显示组件 80

    4.3.1 实例功能 80

    4.3.2 各组件的主要功能和属性 80

    4.3.3 实例功能的代码实现 82

    4.4 时间日期与定时器 84

    4.4.1 时间日期相关的类 84

    4.4.2 日期时间数据与字符串之间的

    转换 84

    4.4.3 QCalendarWidget日历组件 87

    4.4.4 定时器的使用 87

    4.5 QComboBox和QPlainTextEdit 89

    4.5.1 实例功能概述 89

    4.5.2 QComboBox的使用 89

    4.5.3 QPlainTextEdit的使用 91

    4.6 QListWidget和QToolButton 93

    4.6.1 实例功能简介 93

    4.6.2 界面设计 94

    4.6.3 QListWidget的操作 97

    4.6.4 QToolButton与下拉式

    菜单 99

    4.6.5 创建右键快捷菜单 101

    4.7 QTreeWidget和QDockWidget 102

    4.7.1 实例功能概述 102

    4.7.2 界面设计 103

    4.7.3 QTreeWidget操作 105

    4.7.4 QLabel和Qpixmap

    显示图片 110

    4.7.5 QDockWidget的操作 111

    4.8 QTableWidget的使用 112

    4.8.1 QTableWidget概述 112

    4.8.2 界面设计与初始化 113

    4.8.3 QTableWidget操作 114

    第5章 Model/View结构 120

    5.1 Model/View结构 120

    5.1.1 Model/View基本原理 120

    5.1.2 数据模型 121

    5.1.3 视图组件 122

    5.1.4 代理 122

    5.1.5 Model/View结构的一些

    概念 123

    5.2 QFileSystemModel 125

    5.2.1 QFileSystemModel类的

    基本功能 125

    5.2.2 QFileSystemModel的

    使用 125

    5.3 QStringListModel 127

    5.3.1 QstringListModel

    功能概述 127

    5.3.2 QStringListModel的使用 127

    5.4 QStandardItemModel 130

    5.4.1 功能概述 130

    5.4.2 界面设计与主窗口类

    定义 131

    5.4.3 QStandardItemModel的

    使用 132

    5.5 自定义代理 139

    5.5.1 自定义代理的功能 139

    5.5.2 自定义代理类的基本

    设计要求 139

    5.5.3 基于QSpinBox的自定义

    代理类 139

    5.5.4 自定义代理类的使用 141

    第6章 对话框与多窗体设计 143

    6.1 标准对话框 143

    6.1.1 概述 143

    6.1.2 QFileDialog对话框 144

    6.1.3 QColorDialog对话框 146

    6.1.4 QFontDialog对话框 146

    6.1.5 QInputDialog标准输入

    对话框 147

    6.1.6 QMessageBox消息对话框 149

    6.2 自定义对话框及其调用 150

    6.2.1 对话框的不同调用方式 150

    6.2.2 对话框QWDialogSize的

    创建和使用 152

    6.2.3 对话框QWDialogHeaders的

    创建和使用 154

    6.2.4 对话框QWDialogLocate的

    创建与使用 156

    6.2.5 利用信号与槽实现交互

    操作 160

    6.3 多窗体应用程序设计 162

    6.3.1 主要的窗体类及其用途 162

    6.3.2 窗体类重要特性的设置 163

    6.3.3 多窗口应用程序的设计 165

    6.4 MDI应用程序设计 170

    6.4.1 MDI简介 170

    6.4.2 文档窗口类QFormDoc的

    设计 171

    6.4.3 MDI主窗口设计与子窗口的

    使用 173

    6.5 Splash与登录窗口 176

    6.5.1 实例功能概述 176

    6.5.2 对话框界面设计和类

    定义 177

    6.5.3 QDlgLogin类功能实现 178

    6.5.4 Splash登录窗口的使用 181

    第7章 文件系统和文件读写 182

    7.1 文本文件读写 182

    7.1.1 实例功能概述 182

    7.1.2 QFile读写文本文件 182

    7.1.3 QFile和QTextStream结合

    读写文本文件 184

    7.1.4 解决中文乱码的问题 185

    7.2 二进制文件读写 186

    7.2.1 实例功能概述 186

    7.2.2 Qt预定义编码文件的读写 187

    7.2.3 标准编码文件的读写 192

    7.3 文件目录操作 197

    7.3.1 文件目录操作相关的类 197

    7.3.2 实例概述 197

    7.3.3 QCoreApplication类 199

    7.3.4 QFile类 199

    7.3.5 QFileInfo类 200

    7.3.6 QDir类 201

    7.3.7 QTemporaryDir和

    QTemporaryFile 203

    7.3.8 QFileSystemWatcher类 203

    第8章 绘图 206

    8.1 QPainter基本绘图 206

    8.1.1 QPainter绘图系统 206

    8.1.2 QPen的主要功能 209

    8.1.3 QBrush的主要功能 210

    8.1.4 渐变填充 212

    8.1.5 QPainter绘制基本图形

    元件 214

    8.2 坐标系统和坐标变换 217

    8.2.1 坐标变换函数 217

    8.2.2 坐标变换绘图实例 218

    8.2.3 视口和窗口 221

    8.2.4 绘图叠加的效果 223

    8.3 Graphics View绘图架构 224

    8.3.1 场景、视图与图形项 224

    8.3.2 Graphics View的坐标

    系统 226

    8.3.3 Graphics View相关的类 227

    8.3.4 Graphics View程序基本结构

    和功能实现 229

    8.3.5 Graphics View绘图程序

    实例 235

    第9章 Qt Charts 247

    9.1 Qt Charts概述 247

    9.1.1 Qt Charts模块 247

    9.1.2 一个简单的QChart绘图

    程序 248

    9.1.3 图表的主要组成部分 249

    9.2 QChart绘制折线图 253

    9.2.1 实例功能 253

    9.2.2 主窗口类定义和初始化 253

    9.2.3 画笔设置对话框

    QWDialogPen 256

    9.2.4 QChart的设置 257

    9.2.5 QLineSeries序列的设置 259

    9.2.6 QValueAxis坐标轴的

    设置 261

    9.3 各种常见图表的绘制 263

    9.3.1 实例功能概述 263

    9.3.2 数据准备 264

    9.3.3 柱状图 267

    9.3.4 饼图 270

    9.3.5 堆叠柱状图 273

    9.3.6 百分比柱状图 274

    9.3.7 散点图和光滑曲线图 276

    9.4 图表的其他操作 277

    9.4.1 实例功能概述 277

    9.4.2 自定义QWChartView类 278

    9.4.3 主窗口类的设计 280

    9.4.4 实时显示光标处的数值 281

    9.4.5 QLegendMarker的使用 282

    9.4.6 图表的缩放 283

    第 10章 Data Visualization 284

    10.1 Data Visualization模块概述 284

    10.2 三维柱状图 285

    10.2.1 实例功能 285

    10.2.2 主窗口设计 286

    10.2.3 三维柱状图的创建 287

    10.2.4 三维柱状图属性设置 289

    10.3 三维散点图 293

    10.3.1 绘制三维散点图 293

    10.3.2 三维坐标轴的方向 296

    10.3.3 散点形状与大小 296

    10.4 三维曲面绘图 296

    10.4.1 三维曲面图 296

    10.4.2 三维地形图 301

    第 11章 数据库 305

    11.1 Qt SQL模块概述 305

    11.1.1 Qt SQL支持的数据库 305

    11.1.2 SQLite数据库 306

    11.1.3 Qt SQL模块的主要类 308

    11.2 QSqlTableModel的使用 309

    11.2.1 实例功能 309

    11.2.2 主窗口设计 310

    11.2.3 打开数据表 311

    11.2.4 添加、插入与删除记录 319

    11.2.5 保存与取消修改 319

    11.2.6 设置和清除照片 320

    11.2.7 数据记录的遍历 321

    11.2.8 记录排序 322

    11.2.9 记录过滤 322

    11.3 QSqlQueryModel的使用 323

    11.3.1 QSqlQueryModel功能

    概述 323

    11.3.2 使用QSqlQueryModel实现

    数据查询 323

    11.4 QSqlQuery的使用 327

    11.4.1 QSqlQuery基本用法 327

    11.4.2 QSqlQueryModel和

    QSqlQuery联合使用 328

    11.5 QSqlRelationalTableModel的

    使用 336

    11.5.1 关系型数据表和实例

    功能 336

    11.5.2 关系型数据模型功能

    实现 338

    第 12章 自定义插件和库 340

    12.1 自定义Widget组件 340

    12.1.1 自定义Widget子类

    QmyBattery 340

    12.1.2 自定义Widget组件的

    使用 343

    12.2 自定义Qt Designer插件 344

    12.2.1 创建Qt Designer Widget插件项目 344

    12.2.2 插件项目各文件的功能

    实现 346

    12.2.3 插件的编译与安装 349

    12.2.4 使用自定义插件 350

    12.2.5 使用MSVC编译器输出

    中文的问题 352

    12.3 创建和使用静态链接库 353

    12.3.1 创建静态链接库 353

    12.3.2 静态链接库的使用 354

    12.4 创建和使用共享库 357

    12.4.1 创建共享库 357

    12.4.2 使用共享库 358

    第 13章 多线程 362

    13.1 QThread创建多线程程序 362

    13.1.1 QThread类功能简介 362

    13.1.2 掷骰子的线程

    QDiceThread 363

    13.1.3 掷骰子的多线程应用

    程序 365

    13.2 线程同步 367

    13.2.1 线程同步的概念 367

    13.2.2 基于互斥量的线程同步 368

    13.2.3 基于QReadWriteLock的

    线程同步 371

    13.2.4 基于QWaitCondition的

    线程同步 373

    13.2.5 基于信号量的线程同步 377

    第 14章 网络编程 383

    14.1 主机信息查询 383

    14.1.1 QHostInfo和

    QNetworkInterface类 383

    14.1.2 QHostInfo的使用 384

    14.1.3 QNetworkInterface的

    使用 386

    14.2 TCP通信 388

    14.2.1 TCP通信概述 388

    14.2.2 TCP服务器端程序

    设计 390

    14.2.3 TCP客户端程序设计 395

    14.3 QUdpSocket实现UDP通信 397

    14.3.1 UDP通信概述 397

    14.3.2 UDP单播和广播 398

    14.3.3 UDP组播 402

    14.4 基于HTTP协议的网络应用

    程序 405

    14.4.1 实现高层网络操作的类 405

    14.4.2 基于HTTP协议的网络

    文件下载 406

    第 15章 多媒体 409

    15.1 Qt多媒体模块功能概述 409

    15.2 音频播放 410

    15.2.1 使用QMediaPlayer播放

    音乐文件 410

    15.2.2 使用QSoundEffect和Qsound

    播放音效文件 415

    15.3 音频输入 415

    15.3.1 使用QAudioRecorder

    录制音频 415

    15.3.2 使用QAudioInput获取

    音频输入 421

    15.4 视频播放 428

    15.4.1 在QVideoWidget上播放

    视频 428

    15.4.2 在QGraphicsVideoItem上

    播放视频 431

    15.5 摄像头的使用 433

    15.5.1 摄像头控制概述 433

    15.5.2 实例主窗口设计与初始化 435

    15.5.3 QCamera对象创建与控制 436

    15.5.4 QCameraImageCapture抓取静态图片 438

    15.5.5 QMediaRecorder视频录制 439

    第 16章 应用程序设计辅助功能 441

    16.1 多语言界面 441

    16.1.1 多语言界面设计概述 441

    16.1.2 tr()函数的使用 441

    16.1.3 生成语言翻译文件 442

    16.1.4 使用Qt Linguist翻译ts文件 443

    16.1.5 调用翻译文件改变界面语言 444

    16.2 使用样式表自定义界面 446

    16.2.1 Qt样式表 446

    16.2.2 Qt样式表句法 447

    16.2.3 样式表的使用 453

    16.3 使用QStyle设置界面外观 455

    16.3.1 QStyle的作用 455

    16.3.2 Qt内置样式的使用 456

    16.4 Qt应用程序的发布 457

    16.4.1 应用程序发布方式 457

    16.4.2 Windows平台上的应用程序发布 458
查看详情
12
相关图书 / 更多
Qt 5.9 C++开发指南
Qt for Python PySide6 GUI界面开发详解与实例
李增刚;沈丽
Qt 5.9 C++开发指南
Qt Creator快速入门(第4版)
霍亚飞
Qt 5.9 C++开发指南
Qt程序设计基础 基于银河麒麟桌面操作系统
苏静 申波
Qt 5.9 C++开发指南
Qt 5开发及实例(第4版)(含典型案例视频分析)
陆文周
Qt 5.9 C++开发指南
Qt5编程入门(第2版)
霍亚飞、程梁 著
Qt 5.9 C++开发指南
Qt 6 C++开发指南
王维波
Qt 5.9 C++开发指南
Qt C++编程从入门到实战-微课视频版
彭源;孙超超;田秀霞;李红娇
Qt 5.9 C++开发指南
Qt嵌入式开发实战——从串口通信到JSON通信(微课视频版)
曹珂;黄苗玉;张玉;邓宽
Qt 5.9 C++开发指南
Qt5/PyQt5实战指南:手把手教你掌握100个精彩案例
PyQt 5实战指南 : 手把手教你掌握100个精彩 案例
Qt 5.9 C++开发指南
Qt5.12实战
朱晨冰、李建英 著
Qt 5.9 C++开发指南
Qt 6.x从入门到精通
朱文伟
Qt 5.9 C++开发指南
Qt 6开发及实例(第5版)
郑阿奇
您可能感兴趣 / 更多
Qt 5.9 C++开发指南
Qt 6 C++开发指南
王维波
Qt 5.9 C++开发指南
STM32Cube高效开发教程(高级篇)
王维波 鄢志丹 王钊
Qt 5.9 C++开发指南
STM32Cube高效开发教程(基础篇)
王维波、鄢志丹、王钊 著
Qt 5.9 C++开发指南
PythonQtGUI与数据可视化编程
王维波、栗宝鹃、张晓东 著
Qt 5.9 C++开发指南
中国赫哲族史诗伊玛堪
王维波 译
Qt 5.9 C++开发指南
中国少数民族特需用品多语种词汇库(全彩)
王维波
Qt 5.9 C++开发指南
中国少数民族文化英语阅读
王维波 著
Qt 5.9 C++开发指南
高等学校英语拓展系列教程:跨文化商务交际
王维波、车丽娟 编