qsortfilterproxymodel相关内容
我创建了一个基于底层 QHash 的 QAbstractListModel 派生模型.由于我需要在 QML 中使用模型,因此无法使用 Qt 小部件和视图集成的排序功能. 我尝试使用 QSortFilterProxyModel,但它似乎不适用于我的模型.让模型在 QML 中正常工作还不够乏味,现在我被困在排序上. 欢迎提出任何建议. 这是模型来源: typedef QHash数据
..
我有理论上无限深度的树模型和一些属性“组". 除了标准视图之外,我还需要以这样的方式显示此模型(并保持同步),使每个组成为具有相同属性值的所有项目的虚拟父项. 使用 Qt 的模型/视图架构实现这一目标的最佳方法是什么? 不久前我通过在模型中添加/删除项目时插入额外的虚拟“组"解决了类似的问题,但事实证明这种方法不是很灵活,所以我正在寻找更好的解决方案. 理想情况下,我现在看
..
由于我已经将 QSortFilterModel 子类化,以便能够通过 QListView 中的多个列进行搜索,因此 CaseInsensitive 选项不再有效.我试过如下应用它: class CustomSortFilterProxyModel(QtCore.QSortFilterProxyModel):def __init__(self, parent=None):super(CustomS
..
一段时间以来,我一直在为此苦苦挣扎,甚至我不确定自己使用的是正确的pyqt类. 我有一个QTableView,它显示2d整数数组,我希望对其进行过滤以仅显示一个值下的整数. 这是示例: from PyQt4 import QtCore, QtGui import random class TableModel(QtCore.QAbstractTableModel): d
..
我有一个QTreeView,它显示来自SQLite数据库的数据. QTreeView启用了过滤器和排序.为了进行过滤,我在列标题中显示了QLineEdit. 问题:为了启用QLineEdit过滤,列布局似乎已通过修改而固定. 问题:是否有一种方法可以重新启用列布局的设置-通过拖动列,就像在标准QTreeView布局中一样. 我希望用户能够以所需的方式重新排列他的列. 完整的
..
我想编写自己的代理模型,以通过映射索引将树状模型(即某些项目可能具有子项)“展平"为列表状模型(即,没有项目具有子项).子类化QtGui.QIdentityProxyModel似乎是最好的方法: http://qt-project. org/doc/qt-4.8/qidentityproxymodel.html ,但我无法在使用Qt 4.8(包括QIdentityProxyModel)构建的PyS
..
我正在使用PyQt4,并且有一个带有2列数据的QTableView. 索引还有一个额外的列(它来自源模型的headerData函数).为了在单击标题按钮时进行排序,我用代理类包装了模型. 这很好,但是我也想通过单击左上角的按钮(column number: "-1" I would say)按第一列进行排序: 根据要求,这是一个最小的示例: from PyQt4 import Q
..
我已经基于基础的QHash创建了QAbstractListModel派生模型.由于我需要在QML中使用该模型,因此无法使用Qt小部件和视图已集成的排序功能. 我尝试使用QSortFilterProxyModel,但是它似乎不适用于我的模型.使模型在QML中正常工作还不够单调,现在我只能进行排序. 任何建议都值得赞赏. 以下是模型来源: typedef QHash
..
有什么方法可以使QSortFilterProxyModel中的过滤器无效,但是要表明过滤器已经缩小了范围,因此仅在当前可见的行上调用filterAcceptsRow()? 目前,Qt并没有这样做.当我调用QSortFilterProxyModel::invalidateFilter()并将过滤器从"abcd"更改为"abcde"时,将创建一个全新的映射,并在所有源行上调用filterAcce
..
比方说,我有一个存储10,000个字符串实体的列表变量datalist. QTableView仅需要显示其中一些实体.这就是为什么为QTableView分配了QSortFilterProxyModel进行所有过滤的原因. 在完成所有代理工作之后,QTableView“接收"要显示的25个实体(因此剩余的9,975个实体被“过滤掉". 现在,我创建一个QLineEdit用作搜索字段,用户可以在
..
我们在QTableView上安装了QSortFilterProxyModel,并安装了两个(或多个)QLineEdit用于过滤视图(基于这些QLineEdit的文本) 在我们看来,我们有一个插槽,可以告诉我们lineedits字符串和所需的当前列.像这样的东西: void onTextChange(int index, QString ntext) { filter.setFi
..
我正在尝试在PySide中为QTableWidget和QLineEdit创建一个过滤器.我看过一些使用QSortFilterProxyModel for C ++的教程,但是不明白如何在Python中做到这一点. 我需要在"VALUE"列中进行搜索. 解决方案 QSortFilterProxyModel是代理模型,这意味着您将其放在完整的数据模型和视图之间. titusjan 的评论
..
我有一个QDirModel,其当前目录已设置.然后,我有一个QListView,它应该显示该目录中的文件.效果很好. 现在,我想限制显示的文件,因此它仅显示 png 个文件(文件名以.png结尾).问题是使用QSortFilterProxyModel并设置过滤器regexp也会尝试匹配文件的每个父项.根据文档: 对于分层模型,过滤器为 递归地应用于所有孩子. 如果父项不匹配 过滤器,它
..