QTreeWidgetItem 类提供项为用于 QTreeWidget 方便类。 更多...
头: | #include <QTreeWidgetItem> |
CMake: |
find_package(Qt6 REQUIRED COMPONENTS Widgets)
target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
qmake: | QT += widgets |
enum | ChildIndicatorPolicy { ShowIndicator, DontShowIndicator, DontShowIndicatorWhenChildless } |
enum | ItemType { Type, UserType } |
QTreeWidgetItem (int type = Type) | |
QTreeWidgetItem (const QStringList & strings , int type = Type) | |
QTreeWidgetItem (QTreeWidget * parent , int type = Type) | |
QTreeWidgetItem (QTreeWidget * parent , const QStringList & strings , int type = Type) | |
QTreeWidgetItem (QTreeWidget * parent , QTreeWidgetItem * preceding , int type = Type) | |
QTreeWidgetItem (QTreeWidgetItem * parent , int type = Type) | |
QTreeWidgetItem (QTreeWidgetItem * parent , const QStringList & strings , int type = Type) | |
QTreeWidgetItem (QTreeWidgetItem * parent , QTreeWidgetItem * preceding , int type = Type) | |
QTreeWidgetItem (const QTreeWidgetItem & other ) | |
virtual | ~QTreeWidgetItem () |
void | addChild (QTreeWidgetItem * child ) |
void | addChildren (const QList<QTreeWidgetItem *> & children ) |
QBrush | background (int column ) const |
Qt::CheckState | checkState (int column ) const |
QTreeWidgetItem * | child (int index ) const |
int | childCount () const |
QTreeWidgetItem::ChildIndicatorPolicy | childIndicatorPolicy () const |
virtual QTreeWidgetItem * | clone () const |
int | columnCount () const |
virtual QVariant | data (int column , int role ) const |
Qt::ItemFlags | flags () const |
QFont | font (int column ) const |
QBrush | foreground (int column ) const |
QIcon | icon (int column ) const |
int | indexOfChild (QTreeWidgetItem * child ) const |
void | insertChild (int index , QTreeWidgetItem * child ) |
void | insertChildren (int index , const QList<QTreeWidgetItem *> & children ) |
bool | isDisabled () const |
bool | isExpanded () const |
bool | isFirstColumnSpanned () const |
bool | isHidden () const |
bool | isSelected () const |
QTreeWidgetItem * | parent () const |
virtual void | read (QDataStream & in ) |
void | removeChild (QTreeWidgetItem * child ) |
void | setBackground (int column , const QBrush & brush ) |
void | setCheckState (int column , Qt::CheckState state ) |
void | setChildIndicatorPolicy (QTreeWidgetItem::ChildIndicatorPolicy policy ) |
virtual void | setData (int column , int role , const QVariant & value ) |
void | setDisabled (bool disabled ) |
void | setExpanded (bool expand ) |
void | setFirstColumnSpanned (bool span ) |
void | setFlags (Qt::ItemFlags flags ) |
void | setFont (int column , const QFont & font ) |
void | setForeground (int column , const QBrush & brush ) |
void | setHidden (bool hide ) |
void | setIcon (int column , const QIcon & icon ) |
void | setSelected (bool select ) |
void | setSizeHint (int column , const QSize & size ) |
void | setStatusTip (int column , const QString & statusTip ) |
void | setText (int column , const QString & text ) |
(从 6.4 起)
void
|
setTextAlignment (int column , Qt::Alignment alignment ) |
void | setToolTip (int column , const QString & toolTip ) |
void | setWhatsThis (int column , const QString & whatsThis ) |
QSize | sizeHint (int column ) const |
void | sortChildren (int column , Qt::SortOrder order ) |
QString | statusTip (int column ) const |
QTreeWidgetItem * | takeChild (int index ) |
QList<QTreeWidgetItem *> | takeChildren () |
QString | text (int column ) const |
int | textAlignment (int column ) const |
QString | toolTip (int column ) const |
QTreeWidget * | treeWidget () const |
int | type () const |
QString | whatsThis (int column ) const |
virtual void | write (QDataStream & out ) const |
virtual bool | operator< (const QTreeWidgetItem & other ) const |
QTreeWidgetItem & | operator= (const QTreeWidgetItem & other ) |
void | emitDataChanged () |
QDataStream & | operator<< (QDataStream & out , const QTreeWidgetItem & item ) |
QDataStream & | operator>> (QDataStream & in , QTreeWidgetItem & item ) |
树 Widget 项用于保持树小部件的信息行。行通常包含几列数据,每列数据可以包含文本标签和图标。
QTreeWidgetItem 类是替换 Qt 3 的 QListViewItem 类的方便类。它提供的项用于 QTreeWidget 类。
项构造通常采用的父级要么是 QTreeWidget (对于顶层项) 要么是 QTreeWidgetItem (对于较低级树项)。例如,以下代码构造顶级项来表示世界城市,并添加 Oslo 条目作为子级项:
QTreeWidgetItem *cities = new QTreeWidgetItem(treeWidget); cities->setText(0, tr("Cities")); QTreeWidgetItem *osloItem = new QTreeWidgetItem(cities); osloItem->setText(0, tr("Oslo")); osloItem->setText(1, tr("Yes"));
通过指定它们所跟随的项可以按特定次序添加项,当构造它们时:
QTreeWidgetItem *planets = new QTreeWidgetItem(treeWidget, cities); planets->setText(0, tr("Planets"));
项中每列可以拥有自己的背景笔刷,设置采用 setBackground () 函数。可以找到当前背景笔刷采用 background ()。每列的文本标签可以采用自己的字体和笔刷渲染。指定这些采用 setFont () 和 setForeground () 函数,和读取采用 font () 和 foreground ().
顶层项和树中较低级项的主要差异是顶层项没有 parent ()。此信息可用于区分项之间的差异,且有助于了解何时插入和从树中移除项。可以移除项的子级采用 takeChild () 和插入在子级列表中的给定索引处采用 insertChild () 函数。
默认情况下,项是启用的、可选择的、可复选的及可以是拖放操作的来源。可以改变每项的标志通过调用 setFlags () 采用适当值 (见 Qt::ItemFlags )。可复选项可以被复选和取消复选采用 setCheckState () 函数。相应 checkState () 函数指示项目前是否被复选。
当子类化 QTreeWidgetItem 以提供自定义项时,为它们定义新类型以便区分它们与标准项是可能的。需要此特征的子类构造函数要求调用基类构造函数,采用新类型值 >= UserType .
另请参阅 QTreeWidget , QTreeWidgetItemIterator , 模型/视图编程 , QListWidgetItem ,和 QTableWidgetItem .
常量 | 值 | 描述 |
---|---|---|
QTreeWidgetItem::ShowIndicator
|
0
|
将展示此项的展开和折叠控件,即使没有子级。 |
QTreeWidgetItem::DontShowIndicator
|
1
|
从不展示用于展开和折叠的控件,即使有子级。若节点被强制打开,用户将无法展开或折叠项。 |
QTreeWidgetItem::DontShowIndicatorWhenChildless
|
2
|
将展示用于展开和折叠的控件,若项包含子级。 |
此枚举描述用于描述树 Widget 项的类型。
常量 | 值 | 描述 |
---|---|---|
QTreeWidgetItem::Type
|
0
|
用于树 Widget 项的默认类型。 |
QTreeWidgetItem::UserType
|
1000
|
用于自定义类型的最小值。低于 UserType 的值由 Qt 预留。 |
可以定义新用户类型在 QTreeWidgetItem 子类以确保自定义项得到特殊处理;例如,当排序项时。
另请参阅 type ().
[explicit]
QTreeWidgetItem::
QTreeWidgetItem
(
int
type
= Type)
构造树 Widget 项采用指定 type 。项必须被插入树 Widget。
另请参阅 type ().
[explicit]
QTreeWidgetItem::
QTreeWidgetItem
(const
QStringList
&
strings
,
int
type
= Type)
构造树 Widget 项采用指定 type 。项必须被插入树小部件。给定列表的 strings 将被设置作为项中每列的项文本。
另请参阅 type ().
[explicit]
QTreeWidgetItem::
QTreeWidgetItem
(
QTreeWidget
*
parent
,
int
type
= Type)
构造树 Widget 项采用指定 type 并将其追加到项在给定 parent .
另请参阅 type ().
构造树 Widget 项采用指定 type 并将其追加到项在给定 parent 。给定列表 strings 将被设置作为项中每列的项文本。
另请参阅 type ().
构造树 Widget 项采用指定 type 并将其插入给定 parent 后于 preceding 项。
另请参阅 type ().
[explicit]
QTreeWidgetItem::
QTreeWidgetItem
(
QTreeWidgetItem
*
parent
,
int
type
= Type)
构造树 Widget 项并将其追加到给定 parent .
另请参阅 type ().
构造树 Widget 项并将其追加到给定 parent 。给定列表 strings 将被设置作为项中每列的项文本。
另请参阅 type ().
构造树 Widget 项采用指定 type 其被插入 parent 后于 preceding 子级项。
另请参阅 type ().
构造副本为 other 。注意, type () 和 treeWidget () 不拷贝。
此函数是有用的,当重实现 clone ().
[virtual noexcept]
QTreeWidgetItem::
~QTreeWidgetItem
()
销毁此树 Widget 项。
项将被移除从 QTreeWidget 若它已被添加。这使之可安全地随时删除项。
追加 child 项到子级列表。
另请参阅 insertChild () 和 takeChild ().
追加给定列表 children 到项。
另请参阅 insertChildren () 和 takeChildren ().
返回用于渲染背景的笔刷为指定 column .
另请参阅 setBackground () 和 foreground ().
返回标签的校验状态在给定 column .
另请参阅 setCheckState () 和 Qt::CheckState .
返回项位于给定 index 在项的子级列表中。
另请参阅 parent ().
返回子级项数。
返回项指示符策略。此策略决定何时展示树分支展开/折叠指示符。
另请参阅 setChildIndicatorPolicy ().
[虚拟]
QTreeWidgetItem
*QTreeWidgetItem::
clone
() const
创建项及其子级的深拷贝。
返回项中的列数。
[虚拟]
QVariant
QTreeWidgetItem::
data
(
int
column
,
int
role
) const
返回值对于项的 column and role .
另请参阅 setData ().
[protected]
void
QTreeWidgetItem::
emitDataChanged
()
促使关联此项的模型发射 dataChanged () 信号对于此项。
通常只需调用此函数若有子类化 QTreeWidgetItem 并重实现 data () 和/或 setData ().
另请参阅 setData ().
返回用于描述项的标志。这些确定项是否可以被复选、编辑及选择。
标志的默认值为 Qt::ItemIsSelectable | Qt::ItemIsUserCheckable | Qt::ItemIsEnabled | Qt::ItemIsDragEnabled | Qt::ItemIsDropEnabled .
另请参阅 setFlags ().
返回用于渲染文本的字体在指定 column .
另请参阅 setFont ().
返回用于渲染前景 (如:文本) 的笔刷为指定 column 。设置默认构造的笔刷将使视图使用来自样式的默认颜色。
另请参阅 setForeground () 和 background ().
返回的图标显示在指定 column .
返回索引为给定 child 在项的子级列表中。
插入 child 项在 index 在子级列表。
不会再次插入子级,若已插入在某些地方。
插入给定列表为 children 进项子级列表在 index .
已插入其它地方的子级不会被插入。
返回
true
若项被禁用;否则返回
false
.
另请参阅 setFlags ().
返回
true
若项被展开,否则返回
false
.
另请参阅 setExpanded ().
返回
true
若项跨行中所有列;否则返回
false
.
另请参阅 setFirstColumnSpanned ().
返回
true
若项被隐藏,否则返回
false
.
另请参阅 setHidden ().
返回
true
若项被选中,否则返回
false
.
另请参阅 setSelected ().
返回项的父级。
另请参阅 child ().
[虚拟]
void
QTreeWidgetItem::
read
(
QDataStream
&
in
)
读取项从流 in 。这只将数据读取到单项。
另请参阅 write ().
删除给定项指示通过 child 。移除项不会被删除。
设置标签背景笔刷在给定 column 到指定 brush 。设置默认构造的笔刷将使视图使用来自样式的默认颜色。
注意: 若 Qt 样式表 用于如 setBackground() 的相同 Widget,样式表优先若设置冲突。
另请参阅 background () 和 setForeground ().
设置项在给定 column 复选状态为 state .
另请参阅 checkState ().
设置项指示器 policy 。此策略决定何时展示树分支展开/折叠指示符。默认值为 DontShowIndicatorWhenChildless .
另请参阅 childIndicatorPolicy ().
[虚拟]
void
QTreeWidgetItem::
setData
(
int
column
,
int
role
, const
QVariant
&
value
)
设置值对于项的 column and role 到给定 value .
The role 描述数据类型指定通过 value ,和定义通过 Qt::ItemDataRole 枚举。
注意: 默认实现视 Qt::EditRole and Qt::DisplayRole 为引用相同数据。
另请参阅 data ().
禁用项若 disabled 为 true;否则启用项。
另请参阅 isDisabled () 和 setFlags ().
展开项若 expand 为 true,否则折叠项。
警告: The QTreeWidgetItem 必须被添加到 QTreeWidget 在调用此函数之前。
另请参阅 isExpanded ().
把第 1 区间设为跨所有列若 span 为 true;否则展示所有项区间。
另请参阅 isFirstColumnSpanned ().
将项的标志设为给定 flags 。这些确定是否可以选择或修改项。这经常用于禁用项。
另请参阅 flags ().
设置用于显示文本的字体在给定 column 到给定 font .
另请参阅 font (), setText (),和 setForeground ().
设置标签的前景笔刷在给定 column 到指定 brush .
另请参阅 foreground () 和 setBackground ().
隐藏项若 hide 为 True,否则展示项。
注意:
调用此函数不起作用,若项目前不在视图中。尤其,调用
setHidden(true)
在项,然后才将它添加到视图会导致项可见。
另请参阅 isHidden ().
设置要显示的图标在给定 column to icon .
另请参阅 icon (), setText (),和 iconSize .
将项的选定状态设为 select .
另请参阅 isSelected ().
设置树项大小提示在给定 column 到 size 。若未设置大小提示或 size 无效,项委托将基于项数据计算大小提示。
另请参阅 sizeHint ().
设置状态提示为给定 column 到给定 statusTip . QTreeWidget 需要启用鼠标追踪,为使此特征能工作。
另请参阅 statusTip (), setToolTip (),和 setWhatsThis ().
设置要显示的文本在给定 column 到给定 text .
另请参阅 text (), setFont (),和 setForeground ().
[since 6.4]
void
QTreeWidgetItem::
setTextAlignment
(
int
column
,
Qt::Alignment
alignment
)
设置标签的文本对齐方式在给定 column 到 alignment 指定。
该函数在 Qt 6.4 引入。
设置工具提示为给定 column to toolTip .
另请参阅 toolTip (), setStatusTip (),和 setWhatsThis ().
设置 What's This? 帮助为给定 column to whatsThis .
另请参阅 whatsThis (), setStatusTip (),和 setToolTip ().
返回为树项设置的大小提示在给定 column (见 QSize ).
另请参阅 setSizeHint ().
排序项的子级使用给定 order ,通过值在给定 column .
注意: 此函数什么都不做,若项不关联 QTreeWidget .
返回状态提示内容为给定 column .
另请参阅 setStatusTip ().
移除项在 index 并返回它,否则返回 0。
移除子级列表并返回它,否则返回空列表。
返回文本在指定 column .
另请参阅 setText ().
返回标签的文本对齐方式在给定 column .
注意: This function returns an int for historical reasons. It will be corrected to return Qt::Alignment in Qt 7.
另请参阅 Qt::Alignment .
返回工具提示为给定 column .
另请参阅 setToolTip ().
返回包含项的树 Widget。
返回类型被传递给 QTreeWidgetItem 构造函数。
返回 What's This? 帮助内容为给定 column .
另请参阅 setWhatsThis ().
[虚拟]
void
QTreeWidgetItem::
write
(
QDataStream
&
out
) const
把项写入流 out 。这仅从一单项写入数据。
另请参阅 read ().
[虚拟]
bool
QTreeWidgetItem::
operator<
(const
QTreeWidgetItem
&
other
) const
返回
true
若项文本小于文本在
other
项,否则返回
false
.
赋值 other 的数据和标志到此项。注意 type () 和 treeWidget () 不拷贝。
此函数是有用的,当重实现 clone ().
写入树 Widget 项 item 到流 out .
此操作符使用 QTreeWidgetItem::write ().
另请参阅 序列化 Qt 数据类型 .
读取树 Widget 项从流 in into item .
此操作符使用 QTreeWidgetItem::read ().
另请参阅 序列化 Qt 数据类型 .