PySide6.QtWidgets.QItemEditorFactory¶
- class QItemEditorFactory¶
QItemEditorFactory
类提供了用于在视图和委托中编辑项目数据的小部件。更多…概要¶
方法¶
def
__init__()
def
registerEditor()
虚拟方法¶
def
createEditor()
静态函数¶
def
defaultFactory()
注意
本文档可能包含从C++自动翻译到Python的代码片段。我们始终欢迎对代码片段翻译的贡献。如果您发现翻译问题,您也可以通过在我们的https:/bugreports.qt.io/projects/PYSIDE上创建工单来告知我们。
详细描述¶
在项目视图中编辑数据时,编辑器由委托创建和显示。
QStyledItemDelegate
,这是默认安装在Qt项目视图上的委托,使用QItemEditorFactory
为其创建编辑器。所有项目委托都使用由QItemEditorFactory
提供的默认唯一实例。如果您使用setDefaultFactory()
设置新的默认工厂,则现有和新的委托都将使用这个新工厂。一个工厂保存了一系列的
QItemEditorCreatorBase
实例,这些是专门为一种特定的QVariant数据类型生成编辑器的编辑器(所有Qt模型都将它们的数据存储在QVariants中)。标准编辑小部件¶
标准工厂实现提供了多种数据类型的编辑器。每当委托需要为模型提供的数据提供编辑器时,就会创建这些编辑器。下表显示了类型与提供的标准编辑器之间的关系。
类型
编辑器小部件
布尔值
双精度
int
无符号整数
QDate
QDateTime
QPixmap
QString
时间
可以使用
registerEditor()
函数注册其他编辑器。- __init__()¶
构建一个新的项目编辑器工厂。
创建一个带有给定
parent
的编辑器小部件,用于指定userType
的数据,并将其作为QWidget
返回。另请参阅
- static defaultFactory()¶
- Return type:
返回默认的项目编辑器工厂。
另请参阅
- registerEditor(userType, creator)¶
- Parameters:
userType – int
创建者 –
QItemEditorCreatorBase
为给定的
userType
数据类型注册由creator
指定的项目编辑器创建器。- static setDefaultFactory(factory)¶
- Parameters:
工厂 –
QItemEditorFactory
将默认项目编辑器工厂设置为给定的
factory
。新的和现有的委托都将使用新的工厂。另请参阅
- valuePropertyName(userType)¶
- Parameters:
userType – int
- Return type:
返回用于访问给定
userType
数据的属性名称。