整理了qt6开发的知识框架,为了方便以后的学习,先再脑子里面搭建一个脑图

目录

【学习路线】

一、Qt 概述

1.1 什么是 Qt

1.2 Qt 的特点

二、通用第三方库

三、Qt 开发核心技术(9 项)

四、Qt 多线程开发

4.1 核心类

4.2 多线程实现方式

4.3 线程同步机制

4.4 多线程应用场景

五、Qt 与 MySQL 数据库开发

5.1 环境准备

5.2 Qt 连接 MySQL

5.3 常用操作

六、Qt 网络开发

6.1 网络模型

6.2 主要协议与编程

6.3 HTTP 详细功能


【学习路线】

  1. 入门:掌握 Qt 环境配置、信号槽、基础控件

  2. 进阶:多线程、数据库、网络编程

  3. 实战:结合 QXlsx、HTTP、SSL 开发完整桌面应用

一、Qt 概述

1.1 什么是 Qt

  • Qt 是一个 C++ 专用 的 GUI 桌面应用集成开发库

  • 不仅支持图形界面开发,也提供网络、数据库、多线程等模块

1.2 Qt 的特点

  • 跨平台性:支持 Windows、Linux、macOS

  • 可应用于嵌入式主控界面开发

  • Qt6 是重要版本,修复了旧版本的多个 Bug,性能与功能均有提升


二、通用第三方库

类型 说明
网络库 支持 HTTP、TCP、UDP 等网络通信
数据库相关 连接和操作多种数据库
Excel 操作库 例如 QXlsx,用于读写 Excel 文件

三、Qt 开发核心技术(9 项)

序号 技术 说明
1 核心组件类 如 QObject、QApplication 等基础类
2 UI 控件类 按钮、文本框、列表等可视控件
3 信号与槽机制 Qt 特有的事件驱动通信机制
4 常用对话框 文件选择、颜色选择、消息提示等
5 qrc 资源管理器 将图片、字体等资源打包到可执行文件中
6 QEvent 事件机制 处理鼠标、键盘、定时器等事件
7 Qt 元对象系统 基于 MOC(元对象编译器)实现反射、属性系统
8 QtQuick 技术 声明式 UI 编程,适用于动态界面
9 Qt 绘图 使用 QPainter 进行 2D 绘图

四、Qt 多线程开发

4.1 核心类

  • QThread:线程管理的基础类

  • QRunnable:可运行的任务对象

  • QThreadPool:线程池管理

4.2 多线程实现方式

  • 继承 QThread 并重写 run()

  • 使用 moveToThread() 将对象移动到工作线程

  • 使用 QtConcurrent 并行计算

4.3 线程同步机制

机制 作用
互斥锁(QMutex) 保护共享资源
条件变量(QWaitCondition) 线程间等待/唤醒
读写锁(QReadWriteLock) 提高并发读性能

4.4 多线程应用场景

  • 多线程网络编程应用:同时处理多个客户端连接

  • 多线程数据库应用:异步执行 SQL 操作,避免界面卡顿


五、Qt 与 MySQL 数据库开发

5.1 环境准备

  • MySQL 服务器安装与配置

  • SQL 查询语言基本应用(SELECT、INSERT、UPDATE、DELETE)

5.2 Qt 连接 MySQL

  • Qt 与 MySQL 连接环境配置(驱动、库文件)

  • QtSql 模块核心类:

说明
QSqlDatabase 数据库连接管理
QSqlQuery 执行 SQL 语句
QSqlTableModel 表格数据模型
QSqlRelationalTableModel 带关系的数据模型

5.3 常用操作

  • 通用 CRUD(增删改查)SQL 语句操作

  • 应用实例:用户信息管理、数据报表导出


六、Qt 网络开发

6.1 网络模型

  • OSI 七层模型 / TCP/IP 四层模型

6.2 主要协议与编程

协议 Qt 模块 说明
UDP QUdpSocket 无连接、高效、适用于实时通信
TCP QTcpSocket / QTcpServer 面向连接、可靠传输
HTTP QNetworkAccessManager 请求/响应、文件上传下载

6.3 HTTP 详细功能

  • HTTP 请求与响应:GET、POST 等

  • HTTP 文件上传与下载:支持断点续传

  • 网络代理:支持 HTTP、SOCKS5 代理

  • 网络安全证书 SSL/TLS:加密通信,保护数据安全

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐