Qt:查看更新可见数据

时间:2014-06-02 19:14:15

标签: qt model-view-controller model qtableview qabstracttablemodel

在我的计划中,我使用了已连接的QTableViewQAbstractTableModel。模型不包含数据。当视图需要数据显示它调用QAbstractTableModel::data时,模型使用另一个对象来获取数据并返回。在某些时候,该对象中的数据将发生变化。模型不知道发生了什么变化,因此未调用dataChanged

我需要更新只有可见的数据部分(在视​​图中显示)。它应该从模型中获取新数据。我试图通过调用update()repaint()视图函数来实现这一目标,但它并没有帮助。我认为应该调用tableview的paintEvent,但不会调用它。

如何使视图更新数据的可见部分?我不想更新庞大的整个数据。

1 个答案:

答案 0 :(得分:0)

你的愿望破坏了Qt MVC逻辑。但是,如果您需要解决方法 - 您可以接下来调用更新可见区域:emit dataChanged( QModelIndex(), QModelIndex() );