0

我有 TableView 和 QSqlTableModel 作为这个 TableView 的模型。它们按照此处所写的方式连接(第二种方法)。

我希望 TableView 会自动刷新其视图(数据)(当模型中插入/更新/删除某些内容时)。我该怎么做?

我可以通过一个信号以某种方式跟踪 QSqlTableModel 中的所有更改(插入/更新/删除)吗?是的,也许,我可以处理 rowsInserted、rowsMo​​ded 和 rowsRemoved 信号,但是否有一个信号可以用于任何类型的更改?

4

1 回答 1

0

QSqlTableModel 或其基类中似乎没有单个信号。但我想如果您不想为每个信号实现不同的插槽,您可以将这些信号连接到自定义信号。因此,每次发出信号 rowsInserted、rowsMo​​ved... 之一时,它都会自动发出您的自定义信号。

更新:旁注:rowInserted 等信号来自基类 QAbstractItemModel。使用 QSqlTableModel 的信号可能更容易,例如:beforeDelete、beforeInsert 等。

于 2014-10-25T18:19:15.587 回答