C++ 区分C+中QML对象的类类型+;

C++ 区分C+中QML对象的类类型+;,c++,qt,qml,C++,Qt,Qml,我有一个自定义的QML矩形,当从C++访问时,我想将其与内置的QML矩形区分开来: // CustomRectangle.qml import QtQuick 2.3 Rectangle { width: 10 height: 10 // property bool dummy // line A } < >当我实例化一个需要了解对象类型的C++类时,调用 qMeta Abjult:CultNeord返回 QQuickRectangle < /C>。但是,如果我通过取消注释

我有一个自定义的QML矩形,当从C++访问时,我想将其与内置的QML矩形区分开来:

// CustomRectangle.qml
import QtQuick 2.3

Rectangle {
   width: 10
   height: 10
   // property bool dummy // line A
}
< >当我实例化一个需要了解对象类型的C++类时,调用<代码> qMeta Abjult:CultNeord返回<代码> QQuickRectangle < /C>。但是,如果我通过取消注释行a来添加属性,则
QMetaObject::className
现在是
CustomRectangle


如何在不添加属性的情况下将此类类与QQuickRectangle区分开来?

您可以使用
objectName
属性访问对象。例如:

QML

Rectangle {
   width: 10
   height: 10
   objectName: "MyObject"
}
C++

QQuickItem *item = view.rootObject()->findChild<QQuickItem*>("MyObject");
item->doSomething();
QQuickItem*item=view.rootObject()->findChild(“MyObject”);
项目->剂量测量();