qsortfilterproxymodel相关内容

按 QML ListView 中的角色对 QAbstractListModel 派生模型进行排序

我创建了一个基于底层 QHash 的 QAbstractListModel 派生模型.由于我需要在 QML 中使用模型,因此无法使用 Qt 小部件和视图集成的排序功能. 我尝试使用 QSortFilterProxyModel,但它似乎不适用于我的模型.让模型在 QML 中正常工作还不够乏味,现在我被困在排序上. 欢迎提出任何建议. 这是模型来源: typedef QHash数据 ..
发布时间:2022-01-19 23:16:12 其他开发

“分组依据"代理模式

我有理论上无限深度的树模型和一些属性“组". 除了标准视图之外,我还需要以这样的方式显示此模型(并保持同步),使每个组成为具有相同属性值的所有项目的虚拟父项. 使用 Qt 的模型/视图架构实现这一目标的最佳方法是什么? 不久前我通过在模型中添加/删除项目时插入额外的虚拟“组"解决了类似的问题,但事实证明这种方法不是很灵活,所以我正在寻找更好的解决方案. 理想情况下,我现在看 ..

如何使用QSortFilterProxyModel重新启用QTreeView中的手动列布局

我有一个QTreeView,它显示来自SQLite数据库的数据. QTreeView启用了过滤器和排序.为了进行过滤,我在列标题中显示了QLineEdit. 问题:为了启用QLineEdit过滤,列布局似乎已通过修改而固定. 问题:是否有一种方法可以重新启用列布局的设置-通过拖动列,就像在标准QTreeView布局中一样. 我希望用户能够以所需的方式重新排列他的列. 完整的 ..
发布时间:2020-07-05 01:55:54 Python

PySide中缺少QtGui.QIdentityProxyModel吗?

我想编写自己的代理模型,以通过映射索引将树状模型(即某些项目可能具有子项)“展平"为列表状模型(即,没有项目具有子项).子类化QtGui.QIdentityProxyModel似乎是最好的方法: http://qt-project. org/doc/qt-4.8/qidentityproxymodel.html ,但我无法在使用Qt 4.8(包括QIdentityProxyModel)构建的PyS ..
发布时间:2020-07-05 01:55:52 Python

QTableView:按标题索引-1排序

我正在使用PyQt4,并且有一个带有2列数据的QTableView. 索引还有一个额外的列(它来自源模型的headerData函数).为了在单击标题按钮时进行排序,我用代理类包装了模型. 这很好,但是我也想通过单击左上角的按钮(column number: "-1" I would say)按第一列进行排序: 根据要求,这是一个最小的示例: from PyQt4 import Q ..
发布时间:2020-07-05 01:55:50 Python

在QML ListView中按角色对QAbstractListModel派生模型进行排序

我已经基于基础的QHash创建了QAbstractListModel派生模型.由于我需要在QML中使用该模型,因此无法使用Qt小部件和视图已集成的排序功能. 我尝试使用QSortFilterProxyModel,但是它似乎不适用于我的模型.使模型在QML中正常工作还不够单调,现在我只能进行排序. 任何建议都值得赞赏. 以下是模型来源: typedef QHash ..
发布时间:2020-07-05 01:55:46 其他开发

如果过滤器严格变窄,请避免重复调用QSortFilterProxyModel :: filterAcceptsRow()

有什么方法可以使QSortFilterProxyModel中的过滤器无效,但是要表明过滤器已经缩小了范围,因此仅在当前可见的行上调用filterAcceptsRow()? 目前,Qt并没有这样做.当我调用QSortFilterProxyModel::invalidateFilter()并将过滤器从"abcd"更改为"abcde"时,将创建一个全新的映射,并在所有源行上调用filterAcce ..
发布时间:2020-07-05 01:55:44 C/C++开发

链接的QSortFilterProxyModels

比方说,我有一个存储10,000个字符串实体的列表变量datalist. QTableView仅需要显示其中一些实体.这就是为什么为QTableView分配了QSortFilterProxyModel进行所有过滤的原因. 在完成所有代理工作之后,QTableView“接收"要显示的25个实体(因此剩余的9,975个实体被“过滤掉". 现在,我创建一个QLineEdit用作搜索字段,用户可以在 ..
发布时间:2020-07-05 01:55:42 Python

如何为QTableWidget创建过滤器?

我正在尝试在PySide中为QTableWidget和QLineEdit创建一个过滤器.我看过一些使用QSortFilterProxyModel for C ++的教程,但是不明白如何在Python中做到这一点. 我需要在"VALUE"列中进行搜索. 解决方案 QSortFilterProxyModel是代理模型,这意味着您将其放在完整的数据模型和视图之间. titusjan 的评论 ..
发布时间:2020-07-05 01:54:35 Python

将QSortFilterProxyModel与树模型一起使用

我有一个QDirModel,其当前目录已设置.然后,我有一个QListView,它应该显示该目录中的文件.效果很好. 现在,我想限制显示的文件,因此它仅显示 png 个文件(文件名以.png结尾).问题是使用QSortFilterProxyModel并设置过滤器regexp也会尝试匹配文件的每个父项.根据文档: 对于分层模型,过滤器为 递归地应用于所有孩子. 如果父项不匹配 过滤器,它 ..
发布时间:2020-05-10 19:31:11 其他开发