如何将动态创建的Qml对象追加到ListModel?
我尝试了这个,但它不起作用。
property ListModel projects
Component.onCompleted: {
var comp= Qt.createComponent("Project.qml");
var object = comp.createObject(parent,{});
projects.append(object);
}
感谢。
答案 0 :(得分:1)
ListModel append(),insert()和set()将字典作为参数。因此,您需要将createObject()返回的对象包装到字典中。
还要创建ListModel的实例以分配给项目属性,以便可以附加到它。
property ListModel projects: ListModel {}
Component.onCompleted: {
var comp= Qt.createComponent("Project.qml");
var object = comp.createObject(parent, {});
projects.append({"name": object});
}