python-3.x - QSortFilterProxyModel 过滤完成信号

标签 python-3.x qt pyqt qtableview qsortfilterproxymodel

我正在使用自定义 QSortFilterProxyModelQTableView 实现自定义过滤通过覆盖 filterAcceptsRow() .当我更改过滤条件和之后如何通知我的应用程序 filterAcceptsRow()是应用于整个表?

基本上,我想在应用过滤后获取可见项的列表,目前我通过在模型中实现的自定义函数计算此列表,该函数迭代行并获取可见行的列表。这是低效的,因为如果在两者之间没有发生过滤操作,对该函数的两次调用将产生相同的结果。

最佳答案

所有模型都应该发出 layoutAboutToBeChanged() layoutChanged() , 在它们被排序、过滤或以任何其他可能影响 View 的方式更改之前和之后。

关于python-3.x - QSortFilterProxyModel 过滤完成信号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29824591/

相关文章:

c++ - 从不同的 std::thread 更新 Qt GUI

c++ - Qt Qcamera 没有准备好

python - 使用 QT 设计器创建的 PyQt5 程序从终端打开时不显示任何窗口

python - 使用 COM 自动化服务器和 PyQt

python - 我需要一些帮助来理解这个错误

python - 如何在python中将指数值转换为字符串格式?

python - 索引嵌套字典中的值

Python比较2个列表和2个元组与等号

c++ - 如何有选择地使 QWidget 接受鼠标单击的焦点?

python - 将导入的函数连接到 Qt5 进度条,无需依赖