Skip to content

Releases: Awesome-Embedded-Learning-Studio/Tutorial_AwesomeQt

v0.3.0,焕然一新的版本 (2026-07-07)

Choose a tag to compare

@Charliechen114514 Charliechen114514 released this 07 Jul 04:18

AwesomeQT在经过小两个月的各种痛苦的转型和打磨后,终于迈出了最艰难的一步:

进阶层全部完成(134 篇)、专家层启动(2/102 连载)、实例库从 1 件扩到 20 件真成品(控件 13 + 整机 7)、站点完成旗舰化改造(Qt 绿身份 + 三重 CI 质量门 + 可拖拽侧栏)。

已完成内容

进阶层 · Advanced — 全量完成(134 篇)

v0.2.0 上线了 QtBase 16 + QtGui 6 共 22 篇,本版补齐剩余 112 篇,进阶层 134 篇全部到位:

模块 篇数 说明
QtBase 16 v0.2.0 已上线
QtGui 6 v0.2.0 已上线
QtWidgets 74 布局 / 事件 / Model-View / QSS / 自定义绘制 / 对话框 / 主窗口 / 图形视图 / 动画 / MDI + 64 控件进阶
QtNetwork 6 TCP / UDP / HTTP / WebSocket / SSL / 串口
扩展模块 25 SQL / Charts / Multimedia / SVG / Bluetooth / MQTT / Modbus 等
QML 7 语法 / Controls / C++ 互操作 / 动画 / 模型视图

配套示例工程 examples/advanced/ 134 个,全部 CMake + Qt 6 可直接编译。

同时修复 issue #5:指针迭代的 const auto& 误导建议。

专家层 · Expert — 启动 + 规划敲定(2 / 102)

  • 规划清单从 142 收敛到 102:控件双轨制(复杂控件三层全做,8 个 trivial 控件标「无专家层」)+ 砍 8 个小众模块(NFC / SCXML / WebEngine 等稳定后再评估)。完整清单见 todo/expert.md
  • 首批 2 篇成稿(源码拆解,每条结论带 qt_src/qt6.9.1 文件:行号 可复现证据):
    • 01 COW 隐式共享
    • 02 COW 容器实战
  • 配套基础设施:code-index(按源码机制分片的行号索引)、claims-registry(已查证结论 append-only 复用表)、.audit/ 交接单。

实例库 — 从 1 件扩到 20 件真成品

v0.2.0 只有 StatusLED 1 个控件,本版扩到 widget 13 + app 7 = 20 件。每件都是可独立编译的成品,配「成品导览 + 手搓手册」两套文档,统一 AwesomeQt:: 命名空间 + STATIC 库式构建。

widget 通用控件(13 件 · PR#10 / #14):

控件 类别
StatusLED / ToggleSwitch 状态 / 开关
CircleProgress / SpeedMeter / LineChart 自绘显示
RangeSlider / EditableTable / CheckboxTree / CheckboxList 交互输入
LogViewer / PasswordEdit / IpEdit 专项输入显示
FadeAnimation 动画

app 整机成品(7 件 · PR#16):

应用 说明
image-viewer 图片查看器(缩放 / 旋转 / 翻页 / 幻灯片)
json-editor JSON 编辑器(格式化 / 校验 / 树)
sqlite-browser SQLite 浏览器(表浏览 + 任意 SQL)
serial-tool 串口调试助手(收发 + Hex/ASCII)
network-tool TCP / UDP 调试工具
tetris 俄罗斯方块(自绘 + 消行计分)
cpu-memory-monitor CPU / 内存监控(Windows 路径待实机复验)

骨架就位:model 栏 undo-redo-framework(reference 范式)、industrial 栏 hmi-dashboard,待后续放量。

站点改进

旗舰化基建(PR#13)

  • 单一真相源:抽 shared.ts 统一 dev / build 双配置,根治历史 defineConfig 漂移。
  • CI 质量门(四道):
    • build-check — VitePress 构建验证
    • lint — markdownlint 强制拦截
    • content-quality — 内部链接可达性 + 专家层源码引用验真
    • build-examples — 275 个示例工程编译门(install-qt-action 装全套 Qt6 模块)
  • SEO 基础:sitemap.xml + robots.txt + favicon 修复,供搜索引擎收录。
  • 站点体验:代码折叠(>30 行)、字号五档切换、快捷键、页脚版本号、mermaid 图表渲染、首页 3D coverflow 轮播。
  • License NOTICE:代码 MIT / 文档 CC BY-SA 4.0 / Qt 源码引用按 Qt Company 许可,分档授权写清。
  • 贡献者入口:CONTRIBUTING / AGENTS / Issue & PR 模板。
  • third_party submodule 钉到 release tag(benchmark v1.9.5 / googletest v1.17.0)。

站点样式大更新(PR#17)

  • Qt 绿身份重塑:亮 / 暗双主题统一品牌色。
  • 可拖拽侧栏:左右栏宽度可调,localStorage 持久化。
  • 阅读进度条 + 长代码折叠 + 字号五档切换

宣传门面统一

  • README 加在线站点入口、实例库双表(widget 13 + app 7)、进度数字纠正、markdownlint 清零。
  • 首页 tagline 改「聚焦 C++/QtWidgets · 三层递进 · 学→做闭合」。
  • 专家层导航页按 102 篇重写。

内容数据

指标 v0.2.0 v0.3.0
入门层教程 137 篇 137 篇
进阶层教程 22 篇 134 篇(+112)
专家层教程 0 篇 2 篇(连载中 · 规划 102)
代码示例工程 156 个 275 个(+119)
实例库成品 1 件 20 件(widget 13 + app 7)
构建系统 CMake 3.26+ CMake 3.26+
Qt 版本 6.9.1 6.9.1
C++ 标准 C++17/20 C++17/20
支持平台 Windows / Ubuntu / WSL2
静态文档站 VitePress VitePress(Qt 绿身份 + 拖拽侧栏)

开发中

  • 专家层 · Expert — 剩余 100 篇源码拆解(按 QtBase 硬核机制优先:MOC / activate 调用链 / 事件循环 / 对象树)
  • 实例库 model 栏放量(17 件照 undo-redo-framework 范式)
  • 实例库 industrial 栏 hmi-dashboard 成品化(复用 widget 递进链)

v0.2.0 迁移到VitePress与进阶层教程发布

Choose a tag to compare

@Charliechen114514 Charliechen114514 released this 15 May 05:03

v0.2.0 (2026-05-15)

进阶层首批内容上线,站点迁移至 VitePress,全站 metadata 标准化。我们的新网站已经上线!

image

已完成内容

进阶层 · Advanced — QtBase(16 篇)

编号 主题
1.1 QObject 属性系统深度拆解
1.2 信号与槽:工程级深度剖析
1.3 QString 深度性能与陷阱
1.4 容器高级用法:COW 真相与自定义哈希
1.5 QVariant 与 QMetaType 深度实战
1.6 内存管理进阶:智能指针与循环引用
1.7 事件系统进阶:自定义事件与过滤器
1.8 文件 IO 进阶:序列化与文件监控
1.9 多线程进阶:线程池、并发与锁
1.10 QProcess 进阶:异步读写与进程间通信
1.11 定时器进阶:高精度计时与性能分析
1.12 插件系统进阶:版本管理与热加载
1.13 国际化进阶:复数规则与动态语言切换
1.14 日志进阶:自定义处理器与分类过滤
1.15 正则进阶:命名捕获与性能分析
1.16 JSON/XML 进阶:流式处理大文件

进阶层 · Advanced — QtGui(6 篇)

编号 主题
2.1 QPainter 进阶:双缓冲、合成模式、抗锯齿
2.2 坐标变换进阶:矩阵组合与逆变换
2.3 图像处理进阶:像素操作与格式转换
2.4 字体进阶:富文本与 QTextDocument
2.5 OpenGL 进阶:着色器与 VAO/VBO
2.6 拖放进阶:自定义 MIME 与跨应用拖放

进阶示例代码(22 个工程)

全部位于 examples/advanced/,CMake + Qt 6 可直接编译运行,覆盖上述 22 篇教程。

专家层占位

tutorial/expert/ 目录结构及全部 6 个模块的 index 占位页。

站点改进

VitePress 迁移

  • 从 MkDocs Material 迁移至 VitePress
  • 自动侧边栏生成(buildSidebar() 扫描目录结构)
  • 导航栏新增「进阶教程」下拉菜单
  • 首页 Roadmap 更新:进阶层状态改为「编写中 · 22 篇已完成」

卡片布局

  • 新增 CardGrid / CardLink Vue 组件
  • 全部 12 个 index.md 从纯文本列表升级为响应式卡片网格
  • 卡片支持序号标签、标题、描述,hover 动效,暗色模式适配

Metadata 标准化

  • 全站 192 个 markdown 文件统一添加 frontmatter(title + description
  • 侧边栏标题精简:如 "现代Qt开发教程(新手篇)1.1——QObject 与元对象系统" → "1.1 QObject 与元对象系统"

安全修复

  • C++ 模板转义插件从宽泛的 PascalCase 正则匹配改为显式 Vue 组件白名单,避免 <QWidget> 等被误放行

内容数据

指标 数量
入门层教程 137 篇(v0.1.0)
进阶层教程 22 篇(新增)
代码示例工程 134 + 22 = 156 个
可复用控件库组件 1 个(StatusLED)
构建系统 CMake 3.26+
Qt 版本 6.9.1
C++ 标准 C++17/20
支持平台 Windows 10/11 / Ubuntu 22.04+ / WSL2
静态文档站 VitePress(GitHub Pages)

开发中

  • 进阶层 · Advanced — QtWidgets 主题篇(预估 10 篇)
  • 进阶层 · Advanced — QtNetwork(预估 6 篇)
  • 进阶层 · Advanced — QML(预估 7 篇)
  • 专家层 · Expert(预估 142 篇,含 MOC 原理、信号槽源码等)
  • 更多项目实战 Session
  • AwesomeQt Widgets 控件库(规划 500+ 自定义控件)

v0.1.0 — 入门层全部完成

Choose a tag to compare

@Charliechen114514 Charliechen114514 released this 06 May 14:12

v0.1.0 (2026-05-06)

首个公开版本,入门层全部完成。

已完成内容

入门层 · Beginner (137 篇教程 · 134 个代码示例)

  • 环境搭建 — Qt6 安装、IDE 配置、CMake 工程入门(3 篇)
  • QtBase 核心模块 — QObject、信号槽、字符串、容器、内存管理、事件系统、多线程、插件、I18N、正则、JSON/XML(16 篇)
  • QtGui — QPainter、坐标变换、图像处理、字体渲染、OpenGL Widget、拖放(6 篇)
  • QtWidgets — 布局、事件处理、Model/View、QSS、自定义绘制、对话框、主窗口、图形视图、动画、MDI + 64 个控件详解(74 篇)
  • QtNetwork — TCP、UDP、HTTP、WebSocket、SSL/TLS、串口(6 篇)
  • 扩展模块 — SQL、Charts、Multimedia、SVG、Bluetooth、NFC、MQTT、Modbus、SCXML、3D、Pdf、HttpServer、WebEngine、RemoteObjects、SpatialAudio、TextToSpeech 等(25 篇)
  • QML — 语法基础、属性绑定、Controls、C++ 互操作、动画、Model/Delegate、Canvas/粒子(7 篇)

AwesomeQt Widgets 通用控件库(初始版本)

  • StatusLED — 状态指示灯控件(AwesomeQt::StatusLED),支持 4 种状态 + 闪烁动画
  • 构建系统cmake/AwesomeQtWidgets.cmake,提供 awesomeqt_add_widget() 等 CMake 函数,支持 INDIVIDUAL / MERGED 两种构建模式

内容数据

指标 数量
入门层教程文章 137 篇
代码示例工程 134 个
可复用控件库组件 1 个(StatusLED)
构建系统 CMake 3.26+
Qt 版本 6.9.1
C++ 标准 C++17/20
支持平台 Windows 10/11 / Ubuntu 22.04+ / WSL2
静态文档站 MkDocs Material(GitHub Pages)

开发中

  • 进阶层 · Advanced(预估 137 篇)
  • 专家层 · Expert(预估 142 篇,含 MOC 原理、信号槽源码等)
  • 更多项目实战 Session
  • AwesomeQt Widgets 控件库(规划 500+ 自定义控件,21 个 P0 优先级)
  • 代码实例库(规划 1000+ 项目,含应用 Demo、设计模式、QML、工业模板)