gpt4 book ai didi

qt - qml中的ListModel,从模型中获取对象

转载 作者:行者123 更新时间:2023-12-04 13:13:59 25 4
gpt4 key购买 nike

我有一个 ListModel,我按以下方式填写:

property ListModel projects: ListModel {}
property Project currentProject : null

function initialization(){
var comp = Qt.createComponent("Project.qml");
var object = comp.createObject(parent,{});
projects.append(object);
currentProject = projects.get(0)

}
Component.onCompleted: root.initialization();

而且我在 currentProject = projects.get(0) 行中有一个错误。错误文本:

main.qml:14: Error: Cannot assign QObject* to Project_QMLTYPE_0*

最佳答案

当您将 Project 对象附加到 ListModel 时,是 Project 对象的属性被添加到 ListModel(作为 ListModel 角色),而不是 Project 对象本身。因此,当您使用 ListModel.get() 时,返回对象只是一个以 ListModel 角色作为属性的对象(准确地说是 QObject*),而不是 Project对象。

更简单地说,ListModel 不是您的 Project 对象的容器。它仅存储您的 Project 对象的属性。

关于qt - qml中的ListModel,从模型中获取对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14661395/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com