1. main.cpp 中对象注入qml

2. 只把 C++ 类里面的枚举暴露给 QML,禁止 QML new / 创建这个 C++ 对象。

3. 开启模拟功能

4. Q_PROPERTY 属性
5. 创建qml 工程

6. GameSettings 的来源



7. 宽高动态变化

8. 理解 SplashScreen.qml



















C++ 里面的类与qml 关联

也有信号和槽 qml 中


9. 理一理这个qml 的调用关系





forceActiveFocus() :QML Item 的内置方法,强制给这个组件激活键盘焦点。





触发qml
1 man.qml -> 2 splashScreen.qml -> 3 app.qml -> 4 connect.qml -> 5 measure.qml -> 6 stats.qml
其他qml 触发关系






10 总结
- C++ 给 QML 用:注册类 / 注入实例;属性 Q_PROPERTY,函数 Q_INVOKABLE。
- QML 调 C++:直接访问暴露的对象的属性、函数。
- QML 组件间:id 直访(注意 Loader 就绪)、自定义信号解耦。
- 属性更新:必须 emit 信号,QML 绑定才会更新界面。