我试图了解人们如何选择使用 QAbstractListModel
还是 QObject
和 QQmlListProperty
。
鉴于 QQmlListProperty
处理必须使用 QAbstractListModel
编写的“角色”功能,这似乎是一个不太繁琐的路线。
我无法判断大多数人建议使用 QAbstractListModel 是否只是因为它已经存在了更长时间,或者出于某种原因它是否是更好的选择。
我也找不到任何关于这两个选项之间权衡的讨论。这个问题是在 Qt 开发者日讨论 QAbstractListModel
的演讲中提出的,但答案是“这也可以”。
最佳答案
模型实现与 View 一起使用通常会更有效。当您公开“哑列表”以使用模型时,每次模型更改时都会重建整个 View ,而使用模型时仅更新更改。如果您有很多项目,则会产生明显的性能开销。
您可以对模型使用列表,也可以对列表使用模型,但是当您想要获得最佳性能时,应该对列表使用列表,对模型使用模型。
关于qt - QQmlListProperty 与 QAbstractListModel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29567226/