Мне нужно динамически создать 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());
У меня есть доступ к QQmlApplicationEngine
в main.cpp
.
Вопрос: Как я могу добавить dynamic_quick_item
к элементам в моем main.qml
? Я хочу динамически добавлять dynamic_quick_item
в список элементов в моем main.qml
со стороны С++.
Его не нужно добавлять к main.qml
. Только хочу добавить QQuickItem
в список элементов QML, определенных в моем main.qml
, который может быть очень похож на другие элементы QML, определенные в main.qml
. Есть ли способ добиться этого?
Обновление: выполнение следующих действий должно привести к получению действительного экземпляра QQuickItem
, который я добавил. Но это не
QQuickItem *my_dynamic_quickitem = qml_engine->rootObjects()[0]->findChild<QQuickItem*>("DynamicQuickItemObject");
Я получаю my_dynamic_quickitem
как ноль, что означает, что созданный мной QQuickItem никогда не добавлялся