Qt官方示例BluetoothLowEnergyGame源码阅读

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 总结

  1. C++ 给 QML 用:注册类 / 注入实例;属性 Q_PROPERTY,函数 Q_INVOKABLE。
  2. QML 调 C++:直接访问暴露的对象的属性、函数。
  3. QML 组件间:id 直访(注意 Loader 就绪)、自定义信号解耦。
  4. 属性更新:必须 emit 信号,QML 绑定才会更新界面。
相关推荐
海的透彻24 分钟前
dockerfile如何快速构建容器(java服务)
java·开发语言
code2cat36 分钟前
Java工具篇之Gradle:用任务图组织构建与交付
java·开发语言·单元测试·gradle
北京中科新远科技41 分钟前
高速交换机端口预算怎么做?下行、上联、拆分和冗余计算框架
开发语言·php
xiaoye-duck1 小时前
《C++ 项目:手写大模型接入 SDK》DeepSeek接口设计(下):流式响应实现和测试
开发语言·网络·c++·语言模型
AI源码2 小时前
基于 Python 的短视频用户行为分析系统
开发语言·python
旖旎夜光2 小时前
【C++ 基础入门】类和对象(上):封装、对象模型与 this 指针
开发语言·c++·笔记·学习
揽星河..3 小时前
【C语言】结构体
c语言·开发语言
2601_966949653 小时前
如何封装 qd.klines.batch(),让批量 K 线查询函数在多个策略中复用?
开发语言·python·数据分析·pandas·量化交易·股票数据·quantdash
神仙别闹4 小时前
基于Python实现英词语自动对齐系统
开发语言·python
akinggw4 小时前
libagentcore - 一个基于c++的AI多agent系统升级到2.0版本
开发语言·jvm·c++