qtableview相关内容

PyQt QTableView 在滚动大数据集时速度非常慢

我有一个程序可以从 csv 文件加载配置文件并在表格中显示数据.将 Pandas 数据框加载到表格中的速度很快,因为我使用了 QAbstractTableModel 的自定义模型实现,但是 QTableView 小部件的大小调整非常慢. 如何使调整大小和滚动更流畅? 解决方案 好吧,我最终修改了我使用 numpy 创建的自定义表模型,现在它非常快. 更新于 22-02-2020 ..
发布时间:2021-06-24 19:51:04 Python

PyQt - QTableview 中的 QCombobox

我正在使用 QSqlTableModel 在 QTableView 中显示来自 SQLite 数据库的数据.让用户编辑此数据工作正常.但是,对于某些列,我想使用 QComboboxes 而不是自由文本单元格来限制可能的答案列表. 我找到了 this SO answer 并试图在我的模型上实现它/视图设置,但我遇到了问题(所以这是后续操作). 这是一个完整的迷你示例: #!/usr/b ..
发布时间:2021-06-24 19:48:11 其他开发

QTableWidget 对于大表变得很慢

我想创建一个 Qt 表小部件,它每秒添加大约 20 行新行(最大为 10000).旧行永远不会改变. 我首先使用 QTableWidget,但我看到 CPU% 随着表大小的增加而增加,并且在总共约 1000 行时达到 100%. 所以我尝试创建自己的模型,它每 5 秒只执行一次 beginInsertRows 和 endInsertRows.我希望 CPU% 会保持不变,因为我只发出新 ..
发布时间:2021-06-24 19:47:50 Python

在 QHeaderView 类中的 Button 触发的插槽中获取正确的父级

我正在玩一个演示来自 @ekhumoro 的代码(原始 Qt4 代码的所有功劳归他所有),他在其中插入了一行新的 QLineEdit 小部件到 QHeaderviewQTableView 的代码>.我将代码移植到 Qt5 并开始向标题添加不同的小部件.QComboBox、QCheckBox、空白区域 (QWidget) 和 QPushButton 没有问题. 但是,当我创建一个包含 QHBo ..
发布时间:2021-06-24 19:46:22 Python

QTableView由模型驱动时如何刷新

下面的代码创建了由 self.myModel (QAbstractTableModel) 驱动的 QTableView.'Show All' self.checkBox 链接到 self.myModel.cbChanged() 方法. 问题:如何修改此代码,以便在选中复选框后立即刷新“QTableView"? 目标:当复选框被选中时,我们希望显示奇数项.以及要隐藏的偶数项.当复选框关闭 ..
发布时间:2021-06-24 19:44:58 Python

QTableView 按 UserRole 对列数据进行排序

我有一个 QStandardItemModel 管道到 QTableView.我的模型中的一列包含具有用户友好的 displayData 和计算机友好的 userData 的日期.例如,一个 QStandardItem 可能会显示一个类似 22 Nov 2018 的字符串,但用户数据看起来像 324586(自纪元以来的秒数).但是,当我对列进行排序时,它当然会按 displayData 进行排序. ..
发布时间:2021-06-24 19:40:18 Python

如何摆脱tableview底部的空白区域

QTableWidget 的 tableview 底部总是有一个平淡的区域. 如何去掉这个空白区域,让tableview只根据给定的数据显示行列? 解决方案 您必须将 Stretch as resizeMode 设置为 verticalheader(): 导入系统从 PyQt5 导入 QtWidgets、QtCore、QtGui如果 __name__ == '__main__':a ..
发布时间:2021-06-24 19:36:56 Python

使用自定义 HeaderView 时列排序不起作用

我正在尝试创建一个具有排序功能的 TableView.如果我将 TableView obj 设置为我的自定义 HeaderView,即使我的自定义 HeaderView 没有重新实现任何内容,单击标题也不会排序.如果我改用 TableView 的标题 (hh=tv.horizo​​ntalHeader()),它会排序.我做错了什么? 代码如下: 导入系统进口经营者从 PyQt5 导入 Qt ..
发布时间:2021-06-24 19:35:49 Python

QTableview 指定标准搜索字段

我有一个带有以下代码的 QTableView.它运行良好,但当我输入时,搜索字段始终是第一列,即数字和主键. 如何将标准搜索字段更改为另一个字段,例如第二个(名称),即使在名称列上选择列或在名称上使用 setsort 在键入时标准搜索是第一个数字字段? 当代码运行时,我可以通过在第二列中左键单击来更改搜索列,但我想以编程方式实现这一点. class KL_browse(QDialog ..
发布时间:2021-06-24 19:34:06 Python

PyQt/Qt,带有自定义委托的tableview,用于文本溢出单元格的省略号

没有自定义委托,一切正常: 但我的 tableview 显示了搜索结果,并且部分文本需要加粗以表明它与搜索查询匹配的位置. 一旦我使用委托让 html 标签工作,溢出单元格的文本不会被剪裁并替换为省略号: 这是我的代表: class HTMLDelegate(QStyledItemDelegate):def __init__(self, parent=None):super() ..
发布时间:2021-06-24 19:28:32 Python

QTableView 放大/缩小

我正在尝试创建一个可以像在 Excel 中一样放大和缩小的 QTableView. 这里问了一个类似的问题:QWidget 上的缩放功能 但是,我在 PyQt 而非 C 中继承 QTableView,因此重新实现整个 PaintEvent 方法有点进化.其源代码有点复杂: ..
发布时间:2021-06-24 19:24:41 其他开发

如何获得 QTableView 右键单击​​索引

下面的代码创建了一个带有 QTableView 视图的对话框.左键单击 onLeftClick 函数会得到一个 QModelIndex index.此 QModelIndex 稍后用于打印左键单击的单元格的行号和列号. 如何获取被右击的单元格的QModelIndex索引? from PyQt5.QtGui import *从 PyQt5.QtWidgets 导入 *从 PyQt5.Q ..
发布时间:2021-06-24 19:11:33 Python

QFileSystemModel QTableView 修改日期高亮

我正在尝试使用 QFileSystemModel 和 QTableView 制作一个小文件浏览器. 我想知道是否可以在“修改日期"列中突出显示具有相同值的行,例如,如果我有两个或多个今天修改的文件,行以绿色突出显示,昨天修改的那些以绿色但较浅的阴影等突出显示. 解决方案 要更改背景颜色,有几个选项,例如: 覆盖模型的data()方法,使得返回值与角色Qt.BackgroundR ..
发布时间:2021-06-24 19:10:56 Python

编辑QTableView单元格后如何更改背景颜色?

我有这个带有自定义模型和委托的 QTableView,编辑后如何更改单元格的背景颜色? 我应该在委托的 setModelData() 中这样做吗? index.model.setData(index, QVariant(True),Qt.UserRole) 然后在模型的 data() # 它调用自己? if role == Qt.BackgroundColorRole:如果 index ..
发布时间:2021-06-24 19:09:33 Python

在 QtableView 中添加复选框作为垂直标题

我正在尝试使用 QTableView 的复选框,因此我可以将它们用于行选择...我已经设法做到了,现在我希望标题本身是复选框,以便我可以选中/取消选中所有或任何行.我已经找了好几天了,但没能做到. 我尝试将 setHeaderData 用于模型,但无法做到.任何帮助将不胜感激. 解决方案 我对 C++ 版本不是特别满意 @tmoreau 移植到 Python,因为它没有: 处理 ..
发布时间:2021-06-24 19:06:25 Python