Я создаю быстрое приложение, используя файл qt-creator .qml:
Window {
visible: true
width: 640
height: 480
title: qsTr("Hello World")
MenuBar {
Menu {
title: "File"
MenuItem { objectName: "buttonTest"
text: "Open"
onTriggered: m.open()}
MenuItem { text: "show data"
onTriggered: m.data()
}
MenuItem { text: "Close"
onTriggered: Qt.quit()}
}
}
Text {
id: name
text: qsTr("no of vertices :")
}
Text
{
text: "..........."
objectName: "textObject"
}
}
Я хочу установить свойство text "textObject" из метода в c ++ class Iпопробовал следующий код:
void Mine::data()
{
QQmlApplicationEngine engine;
QObject *rootObject = engine.rootObjects().first();
QObject *qmlObject = rootObject->findChild<QObject*>("textObject");
qmlObject->setProperty("text", "Text from C++");
}
, но он показывает следующую ошибку: ASSERT: "! isEmpty ()" в файле /usr/include/qt5/QtCore/qlist.h, строка 345
любая помощь, пожалуйста?