class QItemEditorFactory#

QItemEditorFactory 类提供了在视图和委托中编辑项目数据的小部件。更多...

概述#

方法#

虚方法#

静态函数#

注意

本文档可能包含自动从C++翻译成Python的代码块。我们始终欢迎对代码块翻译的贡献。如果您发现有翻译问题,也可以通过在 https:/bugreports.qt.io/projects/PYSIDE 创建工单的方式来通知我们。

详细说明#

在编辑项目视图中的数据时,委托会创建和显示编辑器。默认安装于Qt的项目视图中的 QStyledItemDelegate 使用 QItemEditorFactory 创建编辑器。由 QItemEditorFactory 提供的默认唯一实例被所有项目委托使用。如果使用 setDefaultFactory() 设置新的默认工厂,则新工厂将用于现有和新的委托。

工厂保存一组 QItemEditorCreatorBase 实例,这些是专门用于为特定QVariant数据类型(所有Qt模型都将它们的数据存储在QVariants中)创建编辑器的编辑器。

标准编辑小部件#

标准工厂实现为多种数据类型提供编辑器。这些编辑器在需要为模型提供的数据提供编辑器时创建。以下表格显示了类型与提供的标准编辑器之间的关系。

类型

编辑器小部件

bool

QComboBox

double

QDoubleSpinBox

int

QSpinBox

unsigned int

QDate

QDateEdit

QDateTime

QDateTimeEdit

QPixmap

QLabel

QString

QLineEdit

QTime

QTimeEdit

可以通过registerEditor() 函数注册附加的编辑器。

__init__()#

构建一个新的项目编辑器工厂。

createEditor(userType, parent)#
参数
返回类型

QWidget

为指定的数据类型 userType 创建一个具有给定 parent 的编辑器小部件,并将其作为 QWidget 返回。

另请参阅

registerEditor()

静态 defaultFactory()#
返回类型

QItemEditorFactory

返回默认项编辑器工厂。

另请参阅

setDefaultFactory()

registerEditor(userType, creator)#
参数

为给定的数据类型 userType 注册由 creator 指定的项编辑器创建器。

注意

工厂将获取项编辑器创建器的所有权,并且如果之后注册了相同类型的新的创建器,则会销毁它。

另请参阅

createEditor()

静态 setDefaultFactory(factory)#
参数

factoryQItemEditorFactory

将默认项编辑器工厂设置为给定的 factory。新的和现有的代理都将使用新的工厂。

另请参阅

defaultFactory()

valuePropertyName(userType)#
参数

userType - int

返回类型

QByteArray

返回用于访问给定数据类型 userType 的数据的属性名。