什么是qtreeview变化的信号

时间:2015-06-22 13:14:25

标签: qt pyqt qtreeview qstandarditemmodel

从JSON文件中获取了一个字典,由QTreeView QStandardItemModel表示。

用户可以重新组织QTreeView(添加,删除,拖放)和重命名项目。

目标是:调用读取已更改QTreeView的函数,生成字典并将其写入初始JSON文件。

我可以通过在发生更改后按QPushButton或通过将该功能绑定到每个更改来执行此操作,例如删除项目时调用函数,添加项目时调用函数,重命名项目时调用函数等等。

如果发生任何变化,有没有办法调用函数?是否存在与所有上述变化相对应的信号?

2 个答案:

答案 0 :(得分:1)

rowsMoveditemChanged信号符合您的认为。见http://doc.qt.io/qt-4.8/qstandarditemmodel.html

答案 1 :(得分:1)

正如@vahancho在评论中建议的那样,您应该连接到layoutChanged信号。在进行任何可能影响视图的更改后,所有模型都应立即发出此信息。所以这将包括排序和过滤,以及重新排序,编辑,删除等。

dataChanged信号类似,但只有在您想要监控特定项目时才真正有用。