我需要动态创建一个QQuickitem& 添加到我的main.qml.
尝试这样做,我QQuickitem通过以下方式创建一个。
qml_engine->load(QUrl(QStringLiteral("qrc:/qml/main.qml")));
// Creating my QQuickItem here
QQuickItem * dynamic_quick_item = new QQuickItem();
dynamic_quick_item->setObjectName("DynamicQuickItemObject");
dynamic_quick_item->setHeight(500);
dynamic_quick_item->setWidth(500);
dynamic_quick_item->setParent(qml_engine->parent());
我可以访问QQmlApplicationEnginein main.cpp。
问题:如何添加dynamic_quick_item到我的项目main.qml?我想从 C++ 端动态添加dynamic_quick_item到我的项目列表中。main.qml
它不需要添加到main.qml. 只想将 a 添加QQuickItem到 mymain.qml中定义的 QML 项目列表中,这与main.qml. 有没有可能的方法来实现这一点?
更新:执行以下操作应该获得QQuickItem我添加的有效实例。但它没有
QQuickItem *my_dynamic_quickitem = qml_engine->rootObjects()[0]->findChild<QQuickItem*>("DynamicQuickItemObject");
我得到my_dynamic_quickitemnull 这意味着我创建的 QQuickItem 从未被添加