从 C++ 到 QML:你需要补上的这块拼图

很多开发者在移动端或桌面端跨平台开发中,会陷入一个误区:认为 Qt 只是 C++ 的 GUI 库。当面对现代 UI 需求时,频繁切换语言带来巨大的认知负荷,且逻辑层与视图层的耦合往往导致代码难以维护。这门课的核心价值,在于帮你打通从底层 C++ 架构到上层 QML 声明式开发的完整链路。它并非简单的语法速成,而是基于 Qt 6.6 最新标准,解决“如何用 C++ 做后端,用 QML 做前端”的企业级工程化问题。如果你的现状是 C++ 基础尚可,但看到 QML 文档就头大,或者项目中使用 QML 时总是遇到性能瓶颈和架构混乱,这正是你需要填补的能力缺口。

知识图谱与进阶路径

课程采用模块化设计,你可以根据自身情况裁剪学习顺序,但建议遵循以下路径以确保知识体系的连贯性:

1. **基础打底**:首先快速过一遍 QML 基础语法与组件模型,重点理解属性绑定、信号槽机制以及 JavaScript 在 QML 中的交互方式。这是所有后续高级特性的基石,切勿跳过。
2. **核心突破**:深入掌握 Item 树结构、状态机(State)以及转场动画(Transition)。企业级开发中,流畅的交互动效往往是区分业余与专业作品的关键,这里需要配合练习,亲手实现几个复杂的状态切换场景。
3. **工程实战**:进入 CMake 构建系统与 C++/QML 混合编程阶段。这是本课程的亮点,讲解如何通过 CMake 组织大型项目,并将 C++ 类暴露给 QML 调用。你需要重点练习数据模型(Model/View)的定制,这是处理复杂列表和表格数据的核心能力。
4. **前沿拓展**:最后接触 Qt Quick 3D 模块。即使你不直接从事 3D 游戏开发,了解如何在 2D 界面中嵌入 3D 内容、控制摄像机与灯光,也能极大地拓宽你的技术边界,满足高端仪表板或可视化项目的需求。

学后能做什么以及如何配合资料

完成本课程后,你将具备独立构建跨平台企业级应用的能力。具体表现为:能够使用 CMake 搭建规范的项目结构;能熟练运用 QML 完成高保真 UI 还原,包括复杂的动画效果;能设计清晰的 C++/QML 分层架构,实现业务逻辑与界面的解耦;并能处理 3D 渲染与 2D 界面的混合展示。

资料包中包含了完整的实战项目源码和课件。建议在学习每个模块后,不要直接拷贝代码,而是先尝试复现核心逻辑,再对照源码查漏补缺。特别是 CMake 配置部分,务必亲手修改构建脚本,理解依赖关系,因为这是实际工作中最容易踩坑的环节。通过这种“学-练-改”的闭环,才能真正将课程中的企业级经验转化为自己的技能。

课程介绍

165034ys4zh1cd4up1p1he.jpg 2025-6-15 11:18 上传 课程概述 1. 首个系统性Qt Quick开发视频教程 本教程是首个真正系统全面讲解Qt Quick开发技术的视频教程,对于想要全面深入学习Qt Quick的同学们来说,这无疑是一个非常有价值的视频教程。 2. 企业级实战开发 结合一线实战开发经验,本视频教程突出重点讲解,所学即所用;通过企业级项目实战,将所学知识融会贯通,让同学们更快的掌握实际开发技巧和方法。 3. 紧跟最新开发趋势 基于Qt 6.6; 全面深入讲解Qt Quick 3D模块; 支持Qt Quick最新模块,紧跟时代潮流; 使用最流行的CMake构建企业级实战工程。 4. 独到的讲解方法 模块化讲解,既适合单独学习,也可以系统性学习; 从初学者角度循序渐进讲解,让学习者知其所以然; 融合基础

课程目录

165034ys4zh1cd4up1p1he.jpg   2025-6-15 11:18 上传 课程概述 1. 首个系统性Qt Quick开发视频教程 本教程是首个真正系统全面讲解Qt Quick开发技术的视频教程,对于想要全面深入学习Qt Quick的同学们来说,这无疑是一个非常有价值的视频教程。 2. 企业级实战开发 结合一线实战开发经验,本视频教程突出重点讲解,所学即所用;通过企业级项目实战,将所学知识融会贯通,让同学们更快的掌握实际开发技巧和方法。 3. 紧跟最新开发趋势 基于Qt 6.6; 全面深入讲解Qt Quick 3D模块; 支持Qt Quick最新模块,紧跟时代潮流; 使用最流行的CMake构建企业级实战工程。 4. 独到的讲解方法 模块化讲解,既适合单独学习,也可以系统性学习; 从初学者角度循序渐进讲解,让学习者知其所以然; 融合基础知识自定义控件,提高学习者应对各种复杂需求的能力。 5. 提供完整源码和资料 通过例程源码深入理解课程内容,极大提高学习效率。 第一章 Qt Quick简介 试看 教程简介09:04 试看 目录 33:38 试看 学习方法08:58 试看 Qt Quick27:08 Qt6安装10:50 Qt Creator配置16:39 新建Qt Quick Application工程17:50 新建QML工程06:45 Qt帮助文档19:45 第二章 QML QML语法37:00 import24:35 id18:30 属性42:35 附加属性20:38 方法30:18 信号51:25 枚举09:20 基本类型27:00 其他类型11:30 JavaScript28:38 自定义QML组件14:40 作用域19:05 代码风格38:06 第三章 Qt Quick基础 试看 项目Item54:58 矩形Rectangle29:01 文本text26:56 标签Label43:29 文本输入框TextInput25:43 文本编辑框TextEdit39:20 行列布局Row Column24:54 栅格布局Grid11:05 流布局Flow12:37 布局过渡Transition22:22 重复器Repeater14:26 锚布局Anchors50:49 布局管理器Layouts42:48 触摸区域MouseArea01:08:25 鼠标事件MouseEvent29:04 拖拽事件DragEvent29:22 键盘事件KeyEvent21:35 定时器Timer24:28 自定义滑动区域SwipeArea51:55 自定义按钮QuickButton42:13 Loader18:05 试看 综合示例HarmonyUI01:37:34 第四章 Qt Quick控件 窗口Window14:06 应用主窗口ApplicationWindow09:31 试看 控件基类型Control09:31 按钮Button58:51 复选框CheckBox48:35 单选框RadioButton47:47 按钮组ButtonGroup16:04 延时按钮DelayButton08:49 开关按钮Switch17:11 进度条ProgressBar26:35 忙碌指示器BusyIndicator08:08 组合框ComboBox50:58 旋钮Dial21:58 滑动条Slider35:00 数值输入器SpinBox18:28 滚轮Tumbler31:30 单行文本编辑器TextField23:07 多行文本编辑器TextArea20:55 边框容器Frame10:45 组容器GroupBox08:51 滑动视图SwipeView29:00 滚动视图ScrollView12:00 分割视图SplitView29:11 栈视图StackView20:55 选项卡TabBar20:21 项目代理ItemDelegate16:30 按钮类代理ButtonDelegate13:25 滑动代理SwipeDelegate13:45 菜单Menu22:50 导航控件Drawer17:40 弹出控件Popup32:31 日期控件Date32:34 分隔控件Separator06:59 设置控件样式QuickStyle26:42 试看 自定义控件QuickToast47:59 自定义控件QuickSliderBar39:56 第五章 Qt Quick对话框 消息对话框MessageDialog14:12 文件对话框FileDialog17:51 目录对话框FolderDialog04:32 字体对话框FontDialog08:01 颜色对话框ColorDialog05:57 第六章 图片 颜色color26:57 渐变Gradient14:14 图片格式与素材获取55:29 图片Image26:16 动态图片AnimatedImage22:34 图片属性变换29:57 状态State23:04 自定义控件QuickWind34:44 第七章 动画 属性动画PropertyAnimation46:46 预定义的目标和属性动画20:02 过渡动画Transition17:11 默认行为动画Behavior17:33 并行动画与序列动画ParallelAndSequential31:32 动画师动画Animator15:17 精灵动画SpriteAnimations47:42 动态精灵动画AnimatedSprite22:03 弹动效果Flickable01:03:30 翻转效果Flipable16:34 第八章 图形效果 颜色效果Color59:34 渐变效果Gradient24:14 发光效果Glow11:24 混合效果Blend08:32 变形效果Displace10:00 阴影效果Shadow16:40 模糊效果Blur40:22 动感模糊效果Blur19:52 遮罩效果Mask15:26 第九章 粒子效果 粒子系统ParticleSystem38:48 发射器Emitter32:59 渲染器ParticlePainter45:50 跟踪发射器TrailEmitter30:30 粒子组ParticleGroup25:13 随机参数Direction55:43 影响器Affector46:04 自定义粒子风控件QuickWind57:32 综合示例问界M9空调01:01:34 第十章 Qt Quick 3D 试看 Qt Quick 3D基础01:03:40 3D场景坐标47:58 场景环境SceneEnvironment41:00 图像照明IBL与天空盒34:15 Qt Quick 3D场景效果22:24 相机Camera52:10 光源Light01:02:19 节点Node33:13 材质Material48:16 纹理Texture01:00:54 2D内容应用到3D场景38:06 实例化渲染35:28 3D粒子系统ParticleSystem3D35:26 3D物理模拟Physics48:57 自定义3D粒子风控件QuickWind3D47:09 3D开发辅助工具21:01 Qt Design Studio43:48 理想L9 3D模型转换01:55:47 车身01:58:44 内饰43:05 参数调整58:41 移植到Qt Creator40:53 界面42:49 控制01:13:30 动画01:21:32 空调01:55:27 第十一章 模型与视图 模型与视图简介15:56 整数模型Model06:29 列表模型ListModel17:23 对象模型ObjectModel12:05 表格模型TableModel16:05 XML列表模型XmlListModel21:16 包装Package13:03 WorkerScript16:27 列表视图ListView01:07:15 栅格视图GridView19:21 表格视图TableView25:38 试看 路径视图PathView41:17 视图过渡Transition17:10 自定义温度列表控件QuickTemperatureList01:06:31 第十二章 图表 新建图表工程18:36 数值和对数坐标轴ValueAndLogValueAxis33:08 分类坐标轴CategoryAxis11:47 柱形图分类坐标轴BarCategoryAxis10:56 日期时间坐标轴DateTimeAxis13:08 图例Legend10:50 图表视图效果09:58 动态创建图表26:04 XYSeries17:33 柱形图BarSeries10:57 面积图AreaSeries10:30 饼状图PieSeries15:27 极坐标图PolarChartView08:08 箱形图BoxPlotSeries06:25 K线图CandlestickSeries07:50 第十三章 数据可视化 3D柱形图Bars3D38:36 3D坐标轴与数据代理18:16 主题Theme3D16:17 试看 3D曲面图23:25 3D散点图Scatter3D12:15 第十四章 多媒体 音频播放33:48 视频播放34:41 截屏17:24 第十五章 QML与C++交互 QML与C++交互基础43:54 Q_INVOKABLE17:05 Q_PROPERTY29:01 信号41:20 注册C++类型33:31 QML国际化翻译52:10 第十六章 比亚迪中控屏 试看 比亚迪中控屏项目44:51 Figma13:01 工程目录结构设计13:53 CMake工程28:11 HMI分析56:23 C++业务逻辑实现33:00 HMI切换46:09 自定义控件37:52 主页01:30:33 应用32:36 空调01:24:28 设置48:23 控制中心36:50