本页内容

QStyleOptionViewItem Class

QStyleOptionViewItem 类用于描述在视图控件中绘制项目时所使用的参数。更多内容...

头文件: #include <QStyleOptionViewItem>
CMake: find_package(Qt6 REQUIRED COMPONENTS Widgets)
target_link_libraries(mytarget PRIVATE Qt6::Widgets)
qmake: QT += widgets
继承自: QStyleOption

公共类型

enum Position { Left, Right, Top, Bottom }
enum StyleOptionType { Type }
enum StyleOptionVersion { Version }
enum ViewItemFeature { None, WrapText, Alternate, HasCheckIndicator, HasDisplay, …, IsDecorationForRootColumn }
flags ViewItemFeatures
enum ViewItemPosition { Invalid, Beginning, Middle, End, OnlyOne }

公共函数

QStyleOptionViewItem()
QStyleOptionViewItem(const QStyleOptionViewItem &other)
QStyleOptionViewItem &operator=(const QStyleOptionViewItem &)

公共变量

QBrush backgroundBrush
Qt::CheckState checkState
Qt::Alignment decorationAlignment
QStyleOptionViewItem::Position decorationPosition
QSize decorationSize
Qt::Alignment displayAlignment
QStyleOptionViewItem::ViewItemFeatures features
QFont font
QIcon icon
QModelIndex index
QLocale locale
bool showDecorationSelected
QString text
Qt::TextElideMode textElideMode
QStyleOptionViewItem::ViewItemPosition viewItemPosition
const QWidget *widget

详细说明

QStyleOptionViewItem 包含QStyle 函数绘制 Qt 模型/视图类项所需的所有信息。

出于性能考虑,该类成员函数较少,且可直接访问成员变量(即使用. 或-> 运算符)。这使得这些结构体使用起来非常直观,同时也强调了它们仅仅是样式函数所使用的参数。

另请参阅 QStyleOption 和模型/视图编程。

成员类型文档

enum QStyleOptionViewItem::Position

此枚举描述了项目装饰的位置。

常量值描述
QStyleOptionViewItem::Left0位于文本左侧。
QStyleOptionViewItem::Right1位于文本右侧。
QStyleOptionViewItem::Top2位于文本上方。
QStyleOptionViewItem::Bottom3文本下方。

另请参阅 decorationPosition 。

enum QStyleOptionViewItem::StyleOptionType

该枚举用于存储样式选项类型的相关信息,并针对每个QStyleOption 子类分别进行定义。

常量常量值描述
QStyleOptionViewItem::TypeSO_ViewItem提供的样式选项的类型(对于此类而言为SO_ViewItem )。

该类型由QStyleOption 、其子类以及qstyleoption_cast()在内部使用,以确定样式选项的类型。通常情况下,除非你想创建自己的QStyleOption 子类和自己的样式,否则无需担心这一点。

另请参阅 StyleOptionVersion 。

enum QStyleOptionViewItem::StyleOptionVersion

该枚举用于存储样式选项的版本信息,并针对每个QStyleOption 子类分别定义。

常量常量值描述
QStyleOptionViewItem::Version14

QStyleOption 的子类使用该版本号来实现扩展,同时保持兼容性。如果您使用qstyleoption_cast(),通常无需检查该值。

另请参阅 StyleOptionType 。

enum QStyleOptionViewItem::ViewItemFeature
flags QStyleOptionViewItem::ViewItemFeatures

此枚举描述了项目可能具备的不同类型特征。

常量值描述
QStyleOptionViewItem::None0x00表示普通项目。
QStyleOptionViewItem::WrapText0x01表示带有换行文本的项目。
QStyleOptionViewItem::Alternate0x02表示该项目的背景使用 alternateBase 进行渲染。
QStyleOptionViewItem::HasCheckIndicator0x04表示该项目具有复选状态指示器。
QStyleOptionViewItem::HasDisplay0x08表示该项目具有显示角色。
QStyleOptionViewItem::HasDecoration0x10表示该项目具有装饰角色。
QStyleOptionViewItem::IsDecoratedRootColumn (since Qt 6.9)0x20表示该项有一个用于绘制的树视图分支部分。
QStyleOptionViewItem::IsDecorationForRootColumn (since Qt 6.9)0x40表示该项包含用于绘制树视图分支部分的信息。

ViewItemFeatures 类型是QFlags<ViewItemFeature> 的 typedef 定义。它存储 ViewItemFeature 值的或(OR)组合。

enum QStyleOptionViewItem::ViewItemPosition

此枚举用于表示项目在行中的位置。可根据项目的位置以不同方式绘制项目,例如在起始和末尾处绘制圆角,中间部分绘制直角。

常量值描述
QStyleOptionViewItem::Invalid0ViewItemPosition 未知,应忽略。
QStyleOptionViewItem::Beginning1该项目出现在行首。
QStyleOptionViewItem::Middle2该项目出现在行中间。
QStyleOptionViewItem::End3该项目出现在行的末尾。
QStyleOptionViewItem::OnlyOne4该项是该行中的唯一一项,因此既位于行首又位于行尾。

成员函数文档

QStyleOptionViewItem::QStyleOptionViewItem()

构建一个 QStyleOptionViewItem,并将成员变量初始化为默认值。

QStyleOptionViewItem::QStyleOptionViewItem(const QStyleOptionViewItem &other)

创建一个other 样式选项的副本。

[noexcept default] QStyleOptionViewItem &QStyleOptionViewItem::operator=(const QStyleOptionViewItem &)

将other 复制并赋值给此QStyleOptionViewItem 实例。

成员变量文档

QBrush QStyleOptionViewItem::backgroundBrush

应用于绘制视图项背景的QBrush 。

Qt::CheckState QStyleOptionViewItem::checkState

如果该视图项可选中,即 `ViewItemFeature::HasCheckIndicator ` 为真,则当该项被选中时,`checkState ` 为真;否则,为假。

Qt::Alignment QStyleOptionViewItem::decorationAlignment

该变量用于存储该项目的装饰对齐方式

默认值为Qt::AlignLeft 。

QStyleOptionViewItem::Position QStyleOptionViewItem::decorationPosition

该变量用于存储该项的装饰位置

默认值为Left 。

另请参阅 Position 。

QSize QStyleOptionViewItem::decorationSize

该变量存储该物品装饰的大小

默认值为QSize (-1, -1),即一个无效的尺寸。

另请参阅 decorationAlignment 和decorationPosition 。

Qt::Alignment QStyleOptionViewItem::displayAlignment

该变量存储了该项显示值的对齐方式

默认值为Qt::AlignLeft 。

QStyleOptionViewItem::ViewItemFeatures QStyleOptionViewItem::features

该变量存储描述此视图项的特征的按位或运算结果

另请参阅 ViewItemFeature 。

QFont QStyleOptionViewItem::font

该变量存储用于该项目的字体

默认情况下,将使用应用程序的默认字体。

另请参阅 QFont 。

QIcon QStyleOptionViewItem::icon

要在视图项中绘制的图标(如有)。

QModelIndex QStyleOptionViewItem::index

要绘制的模型索引。

QLocale QStyleOptionViewItem::locale

该变量存储用于显示文本、数字和日期的区域设置。

这使得样式能够以与应用程序默认区域设置不同的区域设置来显示日期等内容。

bool QStyleOptionViewItem::showDecorationSelected

该变量用于控制是否对选中的项目进行装饰高亮显示

如果此选项为 true,则应高亮显示所选项所在的分支及其上的任何装饰,以表明该项已被选中;否则,无需高亮显示。默认值为 false。

另请参阅 QStyle::SH_ItemView_ShowDecorationSelected 和QAbstractItemView 。

QString QStyleOptionViewItem::text

要在视图项中绘制的文本(如有)。

Qt::TextElideMode QStyleOptionViewItem::textElideMode

当文本过长无法完全显示在某条目中时,应在此处添加省略号

默认值为Qt::ElideMiddle ,即省略号出现在文本中间。

另请参阅 Qt::TextElideMode 和QStyle::SH_ItemView_EllipsisLocation 。

QStyleOptionViewItem::ViewItemPosition QStyleOptionViewItem::viewItemPosition

返回该视图项相对于其他项的位置。详情请参阅ViewItemPosition 枚举。

const QWidget *QStyleOptionViewItem::widget

该变量存储了该项的父控件

该成员包含该项的父控件(itemview),以便例如在QStyledItemDelegate 方法中访问某些属性。

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.