PySide6.QtWidgets.QTreeWidgetItem

class QTreeWidgetItem

QTreeWidgetItem 类提供了一个用于 QTreeWidget 便捷类的项目。更多

概要

方法

虚拟方法

注意

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

详细描述

警告

本节包含从C++自动翻译到Python的代码片段,可能包含错误。

树形小部件项目用于保存树形小部件的信息行。行通常包含多列数据,每列可以包含一个文本标签和一个图标。

QTreeWidgetItem 类是一个便利类,用于替换 Qt 3 中的 QListViewItem 类。它提供了一个用于与 QTreeWidget 类一起使用的项目。

项目通常由一个父级构建,父级可以是QTreeWidget(用于顶级项目)或QTreeWidgetItem(用于树中较低级别的项目)。例如,以下代码构建了一个顶级项目来表示世界上的城市,并将奥斯陆作为一个子项目添加:

cities = QTreeWidgetItem(treeWidget)
cities.setText(0, tr("Cities"))
osloItem = QTreeWidgetItem(cities)
osloItem.setText(0, tr("Oslo"))
osloItem.setText(1, tr("Yes"))

可以通过在构造时指定它们所跟随的项目来按特定顺序添加项目:

planets = QTreeWidgetItem(treeWidget, cities)
planets.setText(0, tr("Planets"))

每个项目中的列都可以有自己的背景画笔,这是通过setBackground()函数设置的。当前的背景画笔可以通过background()找到。每个列的文本标签可以用自己的字体和画笔渲染。这些是通过setFont()setForeground()函数指定的,并通过font()foreground()读取。

顶层项与树中较低级别项之间的主要区别在于,顶层项没有parent()。此信息可用于区分项,并且在从树中插入和删除项时非常有用。可以使用takeChild()删除项的子项,并使用insertChild()函数在子项列表中的给定索引处插入子项。

默认情况下,项目是启用的、可选择的、可勾选的,并且可以作为拖放操作的源。每个项目的标志可以通过调用setFlags()并传入适当的值来更改(参见Qt::ItemFlags)。可勾选的项目可以使用setCheckState()函数进行勾选和取消勾选。相应的checkState()函数指示项目当前是否被勾选。

子类化

当子类化QTreeWidgetItem以提供自定义项时,可以为它们定义新类型,以便将它们与标准项区分开来。需要此功能的子类的构造函数需要使用等于或大于UserType的新类型值调用基类构造函数。

class ItemType

(继承 enum.IntEnum) 此枚举描述了用于描述树形小部件项的类型。

常量

描述

QTreeWidgetItem.Type

树形控件项的默认类型。

QTreeWidgetItem.UserType

自定义类型的最小值。低于UserType的值由Qt保留。

您可以在QTreeWidgetItem子类中定义新的用户类型,以确保自定义项得到特殊处理;例如,在排序项时。

另请参阅

type()

class ChildIndicatorPolicy

常量

描述

QTreeWidgetItem.ShowIndicator

即使没有子项,也会显示用于展开和折叠的控件。

QTreeWidgetItem.DontShowIndicator

即使有子节点,展开和折叠的控件也不会显示。如果节点被强制打开,用户将无法展开或折叠该项目。

QTreeWidgetItem.DontShowIndicatorWhenChildless

如果项目包含子项,将显示展开和折叠的控件。

__init__(other)
Parameters:

其他QTreeWidgetItem

构造一个other的副本。请注意,type()treeWidget()不会被复制。

这个函数在重新实现clone()时非常有用。

另请参阅

data() flags()

__init__([type=QTreeWidgetItem.ItemType.Type])
Parameters:

类型 – int

构造一个指定type的树形部件项。该项必须插入到树形部件中。

另请参阅

type()

__init__(treeview[, type=QTreeWidgetItem.ItemType.Type])
Parameters:

构造一个指定type的树形控件项,并将其附加到给定parent的项中。

另请参阅

type()

__init__(parent[, type=QTreeWidgetItem.ItemType.Type])
Parameters:

构造一个树形部件项并将其附加到给定的parent

另请参阅

type()

__init__(strings[, type=QTreeWidgetItem.ItemType.Type])
Parameters:
  • strings – 字符串列表

  • type – int

构造一个指定type的树形部件项。该项必须插入到树形部件中。给定的strings列表将设置为该项中每列的文本。

另请参阅

type()

__init__(treeview, after[, type=QTreeWidgetItem.ItemType.Type])
Parameters:

构造一个指定type的树形控件项,并将其插入到给定的parent中,位于preceding项之后。

另请参阅

type()

__init__(treeview, strings[, type=QTreeWidgetItem.ItemType.Type])
Parameters:
  • treeviewQTreeWidget

  • strings – 字符串列表

  • type – int

构造一个指定type的树形部件项,并将其附加到给定parent的项中。给定的strings列表将设置为该项中每列的文本。

另请参阅

type()

__init__(parent, after[, type=QTreeWidgetItem.ItemType.Type])
Parameters:

构造一个指定type的树形部件项,该项将被插入到parent中,位于preceding子项之后。

另请参阅

type()

__init__(parent, strings[, type=QTreeWidgetItem.ItemType.Type])
Parameters:

构造一个树形部件项并将其附加到给定的parent。给定的strings列表将设置为该项中每一列的项文本。

另请参阅

type()

addChild(child)
Parameters:

子项QTreeWidgetItem

child项添加到子项列表中。

另请参阅

insertChild() takeChild()

addChildren(children)
Parameters:

children – QTreeWidgetItem 的列表

将给定的children列表附加到项目中。

background(column)
Parameters:

– int

Return type:

QBrush

返回用于渲染指定column背景的画笔。

checkState(column)
Parameters:

– int

Return type:

CheckState

返回给定column中标签的检查状态。

另请参阅

setCheckState() CheckState

child(index)
Parameters:

索引 – int

Return type:

QTreeWidgetItem

返回项目子项列表中给定index处的项目。

另请参阅

parent()

childCount()
Return type:

整数

返回子项的数量。

childIndicatorPolicy()
Return type:

ChildIndicatorPolicy

返回项目指示器策略。此策略决定何时显示树分支展开/折叠指示器。

clone()
Return type:

QTreeWidgetItem

创建项目及其子项目的深拷贝。

columnCount()
Return type:

整数

返回项目中的列数。

data(column, role)
Parameters:
  • column – 整数

  • role – int

Return type:

对象

返回项目的columnrole的值。

另请参阅

setData()

emitDataChanged()

导致与此项关联的模型为此项发出dataChanged()信号。

通常只有在您子类化了QTreeWidgetItem并重新实现了data()和/或setData()时,才需要调用此函数。

另请参阅

setData()

flags()
Return type:

ItemFlag的组合

返回用于描述项目的标志。这些标志决定了项目是否可以被检查、编辑和选择。

flags 的默认值是 Qt::ItemIsSelectable | Qt::ItemIsUserCheckable | Qt::ItemIsEnabled | Qt::ItemIsDragEnabled | Qt::ItemIsDropEnabled。

另请参阅

setFlags()

font(column)
Parameters:

– int

Return type:

QFont

返回用于渲染指定column中文本的字体。

另请参阅

setFont()

foreground(column)
Parameters:

– int

Return type:

QBrush

返回用于渲染指定column前景(例如文本)的画笔。设置默认构造的画笔将让视图使用样式中的默认颜色。

icon(column)
Parameters:

– int

Return type:

QIcon

返回在指定的column中显示的图标。

另请参阅

setIcon() iconSize

indexOfChild(child)
Parameters:

子项QTreeWidgetItem

Return type:

整数

返回给定child在项目的子项列表中的索引。

insertChild(index, child)
Parameters:

在子项列表中的index位置插入child项。

如果子节点已经被插入到其他地方,它将不会被再次插入。

insertChildren(index, children)
Parameters:
  • index – 整数

  • children – QTreeWidgetItem 的列表

将给定的children列表插入到项目子列表中的index位置。

已经插入到其他地方的孩子不会被插入。

isDisabled()
Return type:

布尔

如果项目被禁用,则返回 true;否则返回 false

另请参阅

setFlags()

isExpanded()
Return type:

布尔

如果项目已展开,则返回 true,否则返回 false

另请参阅

setExpanded()

isFirstColumnSpanned()
Return type:

布尔

如果项目跨越一行中的所有列,则返回 true;否则返回 false

isHidden()
Return type:

布尔

如果项目是隐藏的,则返回 true,否则返回 false

另请参阅

setHidden()

isSelected()
Return type:

布尔

如果项目被选中,则返回true,否则返回false

另请参阅

setSelected()

__lt__(other)
Parameters:

其他QTreeWidgetItem

Return type:

布尔

如果项目中的文本小于other项目中的文本,则返回true,否则返回false

parent()
Return type:

QTreeWidgetItem

返回项目的父级。

另请参阅

child()

read(in)
Parameters:

inQDataStream

从流 in 中读取项目。这只会将数据读取到单个项目中。

另请参阅

write()

removeChild(child)
Parameters:

子项QTreeWidgetItem

移除由child指示的给定项。被移除的项不会被删除。

setBackground(column, brush)
Parameters:
  • column – 整数

  • brushQBrush

将给定column中标签的背景画笔设置为指定的brush。设置默认构造的画笔将使视图使用样式中的默认颜色。

注意

如果在同一个部件上同时使用了Qt样式表和setBackground(),当设置冲突时,样式表将优先。

setCheckState(column, state)
Parameters:

将给定column中的项目检查状态设置为state

另请参阅

checkState()

setChildIndicatorPolicy(policy)
Parameters:

策略ChildIndicatorPolicy

设置项目指示器 policy。此策略决定何时显示树分支展开/折叠指示器。默认值为 DontShowIndicatorWhenChildless

另请参阅

childIndicatorPolicy()

setData(column, role, value)
Parameters:
  • column – 整数

  • role – int

  • value – 对象

将项目的columnrole的值设置为给定的value

role 描述了由 value 指定的数据类型,并由 Qt::ItemDataRole 枚举定义。

注意

默认实现将Qt::EditRole和Qt::DisplayRole视为引用相同的数据。

另请参阅

data()

setDisabled(disabled)
Parameters:

disabled – 布尔值

如果 disabled 为 true,则禁用该项目;否则启用该项目。

另请参阅

isDisabled() setFlags()

setExpanded(expand)
Parameters:

expand – 布尔值

如果expand为真,则展开项目,否则折叠项目。

警告

在调用此函数之前,必须将QTreeWidgetItem添加到QTreeWidget中。

另请参阅

isExpanded()

setFirstColumnSpanned(span)
Parameters:

span – 布尔值

如果span为真,则将第一部分设置为跨越所有列;否则显示所有项目部分。

另请参阅

isFirstColumnSpanned()

setFlags(flags)
Parameters:

flagsItemFlag 的组合

将项目的标志设置为给定的flags。这些标志决定了项目是否可以被选择或修改。这通常用于禁用项目。

另请参阅

flags()

setFont(column, font)
Parameters:
  • column – 整数

  • 字体QFont

设置用于显示给定column中文本的字体为给定的font

setForeground(column, brush)
Parameters:
  • column – 整数

  • brushQBrush

将给定column中标签的前景画笔设置为指定的brush

setHidden(hide)
Parameters:

hide – 布尔值

如果 hide 为真,则隐藏该项目,否则显示该项目。

注意

如果项目当前不在视图中,调用此函数将无效。特别是,在项目上调用setHidden(true)然后才将其添加到视图中,将导致项目可见。

另请参阅

isHidden()

setIcon(column, icon)
Parameters:
  • column – 整数

  • 图标QIcon

设置要在给定的column中显示的图标为icon

另请参阅

icon() setText() iconSize

setSelected(select)
Parameters:

select – 布尔值

将项目的选定状态设置为select

另请参阅

isSelected()

setSizeHint(column, size)
Parameters:
  • column – 整数

  • sizeQSize

设置树项在给定column中的大小提示为size。如果未设置大小提示或size无效,项委托将根据项数据计算大小提示。

另请参阅

sizeHint()

setStatusTip(column, statusTip)
Parameters:
  • column – 整数

  • statusTip – str

将给定column的状态提示设置为给定的statusTip。此功能需要启用QTreeWidget的鼠标跟踪才能正常工作。

setText(column, text)
Parameters:
  • column – 整数

  • 文本 – str

设置要在给定的column中显示的文本为给定的text

setTextAlignment(column, alignment)
Parameters:

将给定column中标签的文本对齐方式设置为指定的alignment

另请参阅

textAlignment()

setTextAlignment(column, alignment)
Parameters:
setTextAlignment(column, alignment)
Parameters:
  • column – 整数

  • alignment – int

注意

此函数已弃用。

使用带有Qt::Alignment参数的函数重载。

将给定column中标签的文本对齐方式设置为指定的alignment

另请参阅

Alignment

setToolTip(column, toolTip)
Parameters:
  • column – 整数

  • toolTip – str

将给定column的工具提示设置为toolTip

setWhatsThis(column, whatsThis)
Parameters:
  • column – 整数

  • whatsThis – str

将给定column的“这是什么?”帮助设置为whatsThis

sizeHint(column)
Parameters:

– int

Return type:

QSize

返回为给定column中的树项设置的大小提示(参见QSize)。

另请参阅

setSizeHint()

sortChildren(column, order)
Parameters:

使用给定的order,按给定column中的值对项目的子项进行排序。

注意

如果项目未与QTreeWidget关联,则此函数不执行任何操作。

statusTip(column)
Parameters:

– int

Return type:

字符串

返回给定column内容的状态提示。

另请参阅

setStatusTip()

takeChild(index)
Parameters:

索引 – int

Return type:

QTreeWidgetItem

移除位于index处的项目并返回它,否则返回0。

takeChildren()
Return type:

QTreeWidgetItem的列表

移除子节点列表并返回它,否则返回一个空列表。

text(column)
Parameters:

– int

Return type:

字符串

返回指定column中的文本。

另请参阅

setText()

textAlignment(column)
Parameters:

– int

Return type:

整数

返回给定column中标签的文本对齐方式。

注意

由于历史原因,此函数返回一个 int。它将在 Qt 7 中修正为返回 Qt::Alignment。

另请参阅

setTextAlignment() Alignment

toolTip(column)
Parameters:

– int

Return type:

字符串

返回给定column的工具提示。

另请参阅

setToolTip()

treeWidget()
Return type:

QTreeWidget

返回包含该项的树形小部件。

type()
Return type:

整数

返回传递给QTreeWidgetItem构造函数的类型。

whatsThis(column)
Parameters:

– int

Return type:

字符串

返回给定column内容的“这是什么?”帮助。

另请参阅

setWhatsThis()

write(out)
Parameters:

输出QDataStream

将项目写入流 out。这仅写入来自单个项目的数据。

另请参阅

read()