C 调用qml方法

 时间:2024-10-12 23:03:34

1、假设有一个 QML 文件,如下所示代码:

C 调用qml方法

2、使用 QQmlComponent 或 QQuickView 的 C++ 代码加载该 QML 文档。当使用 QQmlComponent 时,需要调用 QQmlComponent::create() 来创建组件的新实例化对象代码

C 调用qml方法

3、使用QQuickView 后会自动创建组件的实例,该实例可以通过 QQuickView::rootObject() 来访问该对象代码:

C 调用qml方法

4、实例化对象(object)创建后,就可以使用 QObject::setProperty() 或者 QQmlProperty 来修改其属性代码:

C 调用qml方法

5、将 object 转换为其实际类型,并使用编译时安全性调用方法。在这种情况下,main.qml 的基本对象是一个 Item,由 QQuickItem 类定义代码:

C 调用qml方法

6、QML 组竭惮蚕斗件实质上是具有子对象的对象树,子对象有兄弟,也有孩子。可以使用 QObject::objectN锾攒揉敫ame 属性和 QObject::findChild() 来定位 QML 组件的子对象。例如,如果 QML 中的根 Item 有一个 Rectangle 子项:

C 调用qml方法
C 调用qml方法

7、调用QML方法:所有的 QML 方法都被暴露给了 Qt 元对象系统,可以使用 QMetaObject::invokeMethod() 从 C++ 中调用。从 QML 传递的方法参数和返回值在 C++ 中被转换为 QVariant 值。

C 调用qml方法
C 调用qml方法
  • 冬季老人外出需要注意的问题
  • 银鹭饮料里喝出石头 揭常喝饮料的危害
  • 申请MBA如何选择MBA辅导班?
  • 武侠乂X有什么武器防具装备秘籍道具
  • 怎么摆脱庸懒散浮拖
  • 热门搜索
    感恩母亲节手抄报 抗病毒手抄报图片 2020清明节手抄报 51劳动节手抄报 勿忘国耻手抄报 中秋节英语手抄报 英语手抄报的内容 新学期新打算手抄报 五一劳动节手抄报简单又漂亮 共筑中国梦手抄报