如何从QDeclarativeView获取指向某个qml元素的指针?

时间:2012-05-02 15:03:00

标签: c++ qt qml

我们有一些QDeclarativeView,我们加载并打开了qml文件。如何获取指向它的一些元素的指针(比如qml的WebView中的QWebView带有一些Id,放在某个矩形内)?

1 个答案:

答案 0 :(得分:4)

我认为您需要阅读this

它解释了如何在名为“从C ++加载QML组件”的部分中获取对qml对象的引用

  

QML组件本质上是具有子节点的对象树,其中包含兄弟姐妹和自己的孩子。可以使用带有QObject :: findChild()的QObject :: objectName属性定位QML组件的子对象。例如,如果MyItem.qml中的根项具有子Rectangle项:

因此,如果您需要获得参考,您必须编写类似

的内容
QObject *object = yourview.rootObject();
QObject *your_obj = object->findChild<QObject*>("yourobjName");