用C++模型和TabLVIEW工作的最好方法是什么? < QML >我很喜欢NexCube,无法找到与C++模型有关的QML TabLeVIEW的最佳解决方案。几乎所有谷歌的链接都说我应该使用QAbstractTableModel。然而,使用此模型(或者更好地说是Presenter)的问题是,我应该在实际数据中的任何更改时发出数据更新

用C++模型和TabLVIEW工作的最好方法是什么? < QML >我很喜欢NexCube,无法找到与C++模型有关的QML TabLeVIEW的最佳解决方案。几乎所有谷歌的链接都说我应该使用QAbstractTableModel。然而,使用此模型(或者更好地说是Presenter)的问题是,我应该在实际数据中的任何更改时发出数据更新,qml,qt5,mvp,qtableview,Qml,Qt5,Mvp,Qtableview,但我的方法是为每个列单元格创建RowPresenter,其中包含QObject派生的属性,例如NameCellPresenter、StatisticsCellPresenter等。所有这些单元格对象都有复杂的数据,应该通过属性在单元格中显示。此外,我可以在一个单元格中显示多种类型的数据。除了这些单元格presenter对象之外,没有人会知道如何更改RowPresenter或RowPresenter列表,他们只会执行创建/删除的功能 问题是: 如何在不重置ContextProperty的情况下有效

但我的方法是为每个列单元格创建RowPresenter,其中包含QObject派生的属性,例如NameCellPresenter、StatisticsCellPresenter等。所有这些单元格对象都有复杂的数据,应该通过属性在单元格中显示。此外,我可以在一个单元格中显示多种类型的数据。除了这些单元格presenter对象之外,没有人会知道如何更改RowPresenter或RowPresenter列表,他们只会执行创建/删除的功能

问题是:

如何在不重置ContextProperty的情况下有效地将QList中的行数和行数更新到QML? 是否有任何方法可以以这种方式使用QabStretctTableModel:只有cell presenter知道如何更改并在一个单元格中显示可以独立于不同线程更改的复杂数据?
TableView实际上使用的是列表模型,而不是表模型。只需将行列表包装在QabStretcListModel中,然后以通常的方式将其公开给QML。然后,您将使用roleNames方法将每行中的字段映射到TableView列。TableView可以使用任何类型的QAbstractItemModel,QAbstractTableModel继承它。关于使用QAbstractList,我需要为我想要显示的每个项目创建角色,而且我需要发出数据更新表单列表模型,特别是我想要避免的这个问题。我想在中使用类似于QObjectList的基于smth的模型,但能够知道列表何时更改