使用C ++模型和TableView的最佳方法是什么?

时间:2015-10-19 09:03:29

标签: qml qt5 mvp qtableview

我是QML的新手,无法找到与QML TableView有关的C ++模型的最佳解决方案。几乎所有谷歌的链接都说我应该使用QAbstractTableModel。但是,使用此模型(或更好地说Presenter)的问题是,每当实际数据中的任何内容发生变化时,我都会发出dataUpdated

但我的方法是使用RowPresenter创建QObject - 每个列单元格的派生属性(例如NameCellPresenterStatisticsCellPresenter等等。)所有这些单元格对象都很复杂数据,它应该通过属性显示在单元格中。而且,我可以在一个单元格中显示几种类型的数据。除了这些单元格演示者对象之外,没有人永远不会知道更改(RowPresenterRowPresenter列表只会执行创建/删除功能...)

问题是:

  • 如何有效地将QList<RowPresenter>的行数和行数更新为QML(不重置ContextProperty)?
  • 是否有任何方法可以以这种方式使用QAbstractTableModel:只有单元格演示者知道如何更改,并在一个单元格中显示可以独立于不同线程进行更改的复杂数据?

0 个答案:

没有答案