草庐IT

QItemDelegate

全部标签

c++ - 使用 QItemDelegate 在 QTableView 中显示其他数据

我有一个与QSqlTableModel相连的QTableView。在第一列中,只有这种格式的日期:2010-01-02我希望此列以这种格式显示日期(但不更改实际数据):02.01.2010我知道我必须为此专栏创建一个QItemDelegate,但我不知道如何读取现有数据并用不同的东西覆盖它。您知道如何管理它吗? 最佳答案 最简单的解决方案是创建一个QStyledItemDelegate子类并重新实现displayText(...)即classDateFormatDelegate:publicQStyledItemDelegate{p

C++ Qt开发:QItemDelegate自定义代理组件

Qt是一个跨平台C++图形界面开发库,利用Qt可以快速开发跨平台窗体应用程序,在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率,本章将重点介绍QStyledItemDelegate自定义代理组件的常用方法及灵活运用。在Qt中,QStyledItemDelegate类是用于创建自定义表格视图(如QTableView和QTableWidget)的委托类,允许你自定义表格中每个单元格的外观和交互。QStyledItemDelegate是QItemDelegate的子类,提供了更现代、更易用的接口。此处我们将实现对QTableView表格组件的自定义代理功能,

python - PyQt 中复选框的 ListView

我想显示一个QListView,其中每个项目都是一个带有一些标签的复选框。复选框应始终可见。我能想到的一种方法是使用自定义委托(delegate)和QAbstractListModel。有没有更简单的方法?您能否提供执行此操作的最简单代码段?提前致谢 最佳答案 我最终使用了DavidBoddie提供的方法在PyQt邮件列表中。这是基于他的代码的工作片段:fromPyQt4.QtCoreimport*fromPyQt4.QtGuiimport*importsysfromrandomimportrandintapp=QApplicati

python - PyQt - 如何使用 QItemDelegate 在表格 View 中设置 QComboBox

我试图在我的表格中显示一个组合框,以便我可以从表格模型中设置选定的索引,就像表格中的其他单元格一样。我已经从其他示例中将其拼凑在一起,但仍然无法理解交互如何设置QComboBox的选定索引。这是我能想出的最简单的例子来说明问题。如果有人可以演示如何从模型数据自动设置索引?另外如何使用“currentIndexChanged”信号,因为它似乎在重新绘制时几乎连续触发?谢谢。#ThefollowingtellsSIP(thesystemthatbindsQt'sC++toPython)#toreturnPythonnativetypesratherthanQStringandQVarian

c++ - QItemDelegate 和 QStyledItemDelegate 有什么区别?

这两个类都为模型中的数据项提供显示和编辑功能。QStyledItemDelegate较新,关于QItemDelegate的Qt文档指出:NotethatQStyledItemDelegatehastakenoverthejobofdrawingQt'sitemviews.WerecommendtheuseofQStyledItemDelegatewhencreatingnewdelegates.我很困惑两者之间有什么区别以及为什么QStyledItemDelegate优于QItemDelegate! 最佳答案 如QStyledIte

c++ - Qt 为 QTableView 使用自定义 QItemDelegate

我按照Qt提供的SpinBoxDelegate教程来尝试实现我自己的QItemDelegate。它将用于指定QComboBox来表示QTableView单元格中的数据,但它不起作用。我最大的问题是我不知道我的QItemDelegate什么时候会被使用。当使用itemModel->setData()或当itemModel->setItem()时。我会怀疑setItem()因为我重新实现了一个QItemDelegate(强调“项目”),但本教程使用setData()并且它有效很好。我知道如果指定的QItemDelegate不起作用,它会使用默认的,但是现在我指定的那个不起作用怎么办?我应该