QListWidgetItem 类

QListWidgetItem 类提供了一个用于与 QListWidget 项目视图类一起使用的项目。更多信息...

头文件 #include <QListWidgetItem>
CMakefind_package(Qt6 REQUIRED COMPONENTS Widgets)
target_link_libraries(mytarget PRIVATE Qt6::Widgets)
qmakeQT += widgets

公共类型

枚举ItemType { Type, UserType }

公共函数

QListWidgetItem(QListWidget *parent = nullptr, int type = Type)
QListWidgetItem(const QString &text, QListWidget *parent = nullptr, int type = Type)
QListWidgetItem(const QIcon &icon, const QString &text, QListWidget *parent = nullptr, int type = Type)
QListWidgetItem(const QListWidgetItem &other)
虚拟~QListWidgetItem()
QBrushbackground() const
Qt::CheckStatecheckState() const
虚拟 QListWidgetItem *clone() const
虚拟 QVariantdata(int role) const
Qt::ItemFlagsflags() const
QFontfont() const
QBrushforeground() const
QIconicon() const
boolisHidden() const
boolisSelected() const
QListWidget *listWidget() const
虚拟 voidread(QDataStream &in)
voidsetBackground(const QBrush &brush)
voidsetCheckState(Qt::CheckState state)
虚拟 voidsetData(int role, const QVariant &value)
voidsetFlags(Qt::ItemFlags flags)
voidsetFont(const QFont &font)
voidsetForeground(const QBrush &brush)
voidsetHidden(bool hide)
voidsetIcon(const QIcon &icon)
voidsetSelected(bool select)
voidsetSizeHint(const QSize &size)
voidsetStatusTip(const QString &statusTip)
voidsetText(const QString &text)
(since 6.4) voidsetTextAlignment(Qt::Alignment alignment)
voidsetToolTip(const QString &toolTip)
voidsetWhatsThis(const QString &whatsThis)
QSizesizeHint() const
QStringstatusTip() const
QStringtext() const
inttextAlignment() const
QStringtoolTip() const
inttype() const
QStringwhatsThis() const
虚拟 voidwrite(QDataStream &out) const
virtual booloperator<(const QListWidgetItem &other) const
QListWidgetItem &operator=(const QListWidgetItem &other)
QDataStream &operator<<(QDataStream &out, const QListWidgetItem &item)
QDataStream &operator>>(QDataStream &in, QListWidgetItem &item)

详细描述

QListWidgetItem 表示一个 QListWidget 中的单个条目。每个条目可以保存多个信息,并且会适当地显示它们。

工具视图便利类使用经典的条目界面而不是纯视图模式。对于更灵活的列表视图小部件,请考虑使用具有标准模型的 QListView 类。

通过指定列表视图,构造时可以在列表中自动插入列表项。

    new QListWidgetItem(tr("Hazel"), listWidget);

或者,也可以在没有父小部件的情况下创建列表项,稍后可以使用 QListWidget::insertItem() 功能将其插入列表中。

列表项通常用于显示 text() 和图标。这些可以通过 setText() 和 setIcon() 函数设置。可以使用 setFont()、setForeground() 和 setBackground() 自定义文本的外观。可以使用 setTextAlignment() 函数对列表项中的文本进行对齐。可以通过 setToolTip()、setStatusTip() 和 setWhatsThis() 添加到列表项中的工具提示、状态提示和“这是什么?”帮助。

默认情况下,条目是启用的、可选的、可复选的,并且可以是拖放操作的来源。

可以通过使用适当的值调用 setFlags() 来更改每个条目的标志(见 Qt::ItemFlags)。复选框项可以使用 setCheckState() 函数检查、取消选中或部分选中。相应的 checkState() 函数指示当前项的检查状态。

可以使用 isHidden() 函数来确定条目是否被隐藏。要隐藏条目,请使用 setHidden()。

子类化

在继承QListWidgetItem来提供自定义项目时,可以定义它们的新的类型,从而使它们能够与标准项目区分开来。对于需要此功能的子类,请确保在您的构造函数中调用基类构造函数,并使用等于或大于UserType的新类型值。

也请参阅 QListWidget模型/视图编程QTreeWidgetItemQTableWidgetItem

成员类型文档

枚举QListWidgetItem::ItemType

此枚举描述了用于描述列表小部件项目的类型。

常量描述
QListWidgetItem::Type0列表小部件项目的默认类型。
QListWidgetItem::UserType1000自定义类型的最低值。低于UserType的值由Qt保留。

您可以在QListWidgetItem子类中定义新用户类型,以确保自定义项目被特别处理。

也请参阅类型()。

成员函数文档

[显式] QListWidgetItem::QListWidgetItem(QListWidget *parent = nullptr, int type = Type)

使用指定的type和给定的parent构建一个空的列表小部件项目。如果没有指定parent,则项目需要使用QListWidget::insertItem()插入到列表小部件中。

此构造函数将项目插入到传递给构造函数的父项的模型中。如果模型已排序,则插入的行为是未确定的,因为模型将在此时调用项的'<'运算符方法,而这个项在此点尚未构建。为了避免这种行为的不确定性,我们建议不要指定父项,而是使用QListWidget::insertItem()。

也请参阅类型()。

[显式] QListWidgetItem::QListWidgetItem(const QString &text, QListWidget *parent = nullptr, int type = Type)

使用指定的type和给定的textparent构建一个空的列表小部件项目。

此构造函数将项目插入到传递给构造函数的父项的模型中。如果模型已排序,则插入的行为是未确定的,因为模型将在此时调用项的'<'运算符方法,而这个项在此点尚未构建。为了避免这种行为的不确定性,我们建议不要指定父项,而是使用QListWidget::insertItem()。

也请参阅类型()。

[显式] QListWidgetItem::QListWidgetItem(const QIcon &icon, const QString &text, QListWidget *parent = nullptr, int type = Type)

使用指定的type和给定的icontextparent构建一个空的列表小部件项目。

此构造函数将项目插入到传递给构造函数的父项的模型中。如果模型已排序,则插入的行为是未确定的,因为模型将在此时调用项的'<'运算符方法,而这个项在此点尚未构建。为了避免这种行为的不确定性,我们建议不要指定父项,而是使用QListWidget::insertItem()。

也请参阅类型()。

QListWidgetItem::QListWidgetItem(const QListWidgetItem &other)

构建other的副本。请注意,类型() 和 listWidget() 不会被复制。

此函数在重写clone() 时很有用。

也请参阅数据() 和 标志

[虚拟 noexcept] QListWidgetItem::~QListWidgetItem()

销毁列表项。

QBrush QListWidgetItem::背景() const

返回用于显示列表项背景的画笔。

另请参阅 设置背景() 和 前景

Qt::CheckState QListWidgetItem::检查状态() const

返回列表项的选中状态(见 Qt::CheckState)。

另请参阅 设置检查状态() 和 标志

[虚拟] QListWidgetItem *QListWidgetItem::clone() const

创建项的确切副本。

[虚拟] QVariant QListWidgetItem::数据(int role) const

返回给定 role 的项数据。如果需要额外角色或特定角色的特殊行为,则重新实现此函数。

另请参阅 Qt::ItemDataRole设置数据

Qt::ItemFlags QListWidgetItem::标志() const

返回此项的项标志(见 Qt::ItemFlags)。

另请参阅 设置标志()。

QFont QListWidgetItem::字体() const

返回用于显示此列表项文本的字体。

另请参阅 设置字体

QBrush QListWidgetItem::前景() const

返回用于显示列表项前景(例如文本)的画笔。

另请参阅 设置前景背景

QIcon QListWidgetItem::图标() const

返回列表项的图标。

另请参阅 设置图标图标大小

bool QListWidgetItem::isHidden() const

如果项被隐藏,则返回 true;否则返回 false

另请参阅 设置隐藏

bool QListWidgetItem::isSelected() const

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

另请参阅 设置选中

QListWidget *QListWidgetItem::列表部件() const

返回包含项的列表部件。

[虚拟] void QListWidgetItem::read(QDataStream &in)

从流 in 中读取项。

另请参阅 write().

void QListWidgetItem::setBackground(const QBrush &brush)

将列表项的背景画刷设置为指定的 brush。设置默认constructed画刷将使视图使用风格的默认颜色。

另请参阅 background() 和 setForeground().

void QListWidgetItem::setCheckState(Qt::CheckState state)

将列表项的复选状态设置为 state

另请参阅 checkState().

[虚拟] void QListWidgetItem::setData(int role, const QVariant &value)

为给定的 role 设置给定的 value。如果您需要额外的角色或某些角色的特殊行为,请重写此函数。

注意: 默认实现将 Qt::EditRoleQt::DisplayRole 视为指向相同的数据。

另请参阅 Qt::ItemDataRoledata().

void QListWidgetItem::setFlags(Qt::ItemFlags flags)

设置列表项的标志为 flags

另请参阅 flags() 和 Qt::ItemFlags.

void QListWidgetItem::setFont(const QFont &font)

设置绘制项时使用的字体为给定的 font

另请参阅 font().

void QListWidgetItem::setForeground(const QBrush &brush)

将列表项的前景色画刷设置为指定的 brush。设置默认constructed画刷将使视图使用风格的默认颜色。

另请参阅 foreground() 和 setBackground().

void QListWidgetItem::setHidden(bool hide)

如果 hide 为 true,则隐藏项;否则显示项。

另请参阅 isHidden().

void QListWidgetItem::setIcon(const QIcon &icon)

将列表项的图标设置为给定的 icon

另请参阅 icon(),text(),以及 iconSize.

void QListWidgetItem::setSelected(bool select)

将项目选择状态设置为select

另请参阅isSelected

void QListWidgetItem::setSizeHint(const QSize &size)

设置列表项的大小提示为size。如果未设置大小提示或size无效,项代理将根据项数据计算大小提示。

另请参阅sizeHint

void QListWidgetItem::setStatusTip(const QString &statusTip)

将列表项的状态提示设置为由statusTip指定的文本文本。《QListWidget》鼠标跟踪需要启用此功能。

另请参阅statusTip(), setToolTip(), setWhatsThis() 和 QWidget::setMouseTracking

void QListWidgetItem::setText(const QString &text)

将列表小部件文本设置为指定的text

另请参阅text

[since 6.4] void QListWidgetItem::setTextAlignment(Qt::Alignment alignment)

将列表项的文本对齐设置为alignment

此功能是在Qt 6.4中引入的。

void QListWidgetItem::setToolTip(const QString &toolTip)

设置列表项的提示为toolTip指定的文本文本。

另请参阅toolTip(), setStatusTip() 和 setWhatsThis

void QListWidgetItem::setWhatsThis(const QString &whatsThis)

将列表项的"这是什么?"帮助设置为whatsThis指定的文本文本。

另请参阅whatsThis(), setStatusTip() 和 setToolTip

QSize QListWidgetItem::sizeHint() const

返回为列表项设置的大小提示。

另请参阅setSizeHint

QString QListWidgetItem::statusTip() const

返回列表项的状态提示。

另请参阅setStatusTip

QString QListWidgetItem::text() const

返回列表项的文本。

另请参阅setText

int QListWidgetItem::textAlignment() const

返回列表项的文本对齐方式。

注意:由于历史原因,此函数返回int类型。在Qt 7中,它将更正为返回Qt::Alignment

另请参阅:Qt::Alignment

QString QListWidgetItem::toolTip() const

返回列表项的工具提示。

另请参阅:setToolTip(),statusTipwhatsThis

int QListWidgetItem::type() const

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

QString QListWidgetItem::whatsThis() const

返回列表项的“这是什么?”帮助文本。

另请参阅:setWhatsThis(),statusTiptoolTip

[虚函数] void QListWidgetItem::write(QDataStream &out) const

将项写入流out

另请参阅:read

[虚函数] bool QListWidgetItem::operator<(const QListWidgetItem &other) const

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

QListWidgetItem &QListWidgetItem::operator=(const QListWidgetItem &other)

other的数据和标志赋给此项。请注意,type()和listWidget()不会被复制。

此函数在重写clone() 时很有用。

也请参阅数据() 和 标志

相关非成员函数

QDataStream &operator<<(QDataStream &out, const QListWidgetItem &item)

将列表项item写入流out

此操作使用了QListWidgetItem::write

另请参阅:序列化Qt数据类型

QDataStream &operator>>(QDataStream &in, QListWidgetItem &item)

从流in中将列表项读取到item中。

此操作使用了QListWidgetItem::read

另请参阅:序列化Qt数据类型

© 2024 Qt公司有限公司。本文件包含的内容的版权归其各自所有者所有。本文件提供的文档根据由自由软件基金会发布的GNU自由文档许可协议第1.3版的条款进行许可。Qt及其相关标志是芬兰及/或其他国家的Qt公司有限公司的商标。商标名称。所有其他商标均为各自所有者的财产。