在C++;? < P>我想把QML项引用传递给C++。它使用id显式工作: Item { id: qmlitem x: CppObj.getValue(qmlitem) } // c++ int getValue(QObject * qmlItem) { return 0; }

在C++;? < P>我想把QML项引用传递给C++。它使用id显式工作: Item { id: qmlitem x: CppObj.getValue(qmlitem) } // c++ int getValue(QObject * qmlItem) { return 0; },c++,qml,C++,Qml,如果我通过这个: Item { x: CppObj.getValue(this) } QObject*qmlItem是0x0 如果我替换 int getValue(QObject * qmlItem) 借 qmlItem不是0x0-它有一个值,但属于哪种类型?是否可以从中获取QObject* 在QML中,此的值为。将其传递给C++不会产生任何有意义的结果。无论其内容是什么,它都不是对当前QML项的引用。所以只需坚持你的第一个解决方案并传递一个ID int getValue(void *

如果我通过这个:

Item {
  x: CppObj.getValue(this)
}
QObject*qmlItem是0x0

如果我替换

int getValue(QObject * qmlItem) 


qmlItem不是0x0-它有一个值,但属于哪种类型?是否可以从中获取QObject*

在QML中,
的值为。将其传递给C++不会产生任何有意义的结果。无论其内容是什么,它都不是对当前QML项的引用。所以只需坚持你的第一个解决方案并传递一个ID

int getValue(void * qmlItem)