QStyleOptionToolBar Class
QStyleOptionToolBar 类用于描述绘制工具栏的参数。更多内容...
| 头文件: | #include <QStyleOptionToolBar> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Widgets) target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
| qmake: | QT += widgets |
| 继承自: | QStyleOption |
公共类型
| enum | StyleOptionType { Type } |
| enum | StyleOptionVersion { Version } |
| enum | ToolBarFeature { None, Movable } |
| flags | ToolBarFeatures |
| enum | ToolBarPosition { Beginning, Middle, End, OnlyOne } |
公共函数
| QStyleOptionToolBar() | |
| QStyleOptionToolBar(const QStyleOptionToolBar &other) | |
| QStyleOptionToolBar & | operator=(const QStyleOptionToolBar &) |
公共变量
| QStyleOptionToolBar::ToolBarFeatures | features |
| int | lineWidth |
| int | midLineWidth |
| QStyleOptionToolBar::ToolBarPosition | positionOfLine |
| QStyleOptionToolBar::ToolBarPosition | positionWithinLine |
| Qt::ToolBarArea | toolBarArea |
详细说明
QStyleOptionToolBar 包含QStyle 函数绘制QToolBar 所需的所有信息。
QStyleOptionToolBar 类保存了用于绘制小部件的lineWidth 和midLineWidth 。它还存储了有关工具栏应位于哪个area 中的信息、工具栏是否可移动、工具栏行应位于何处(positionOfLine )以及工具栏在行中的位置(positionWithinLine )等信息。
此外,该类还提供了一些枚举:ToolBarFeature 枚举用于描述工具栏是否可移动,而ToolBarPosition 枚举则用于描述工具栏行所在的位置,以及工具栏在该行中的位置。
出于性能考虑,该类包含的成员函数较少,且对成员变量的访问是直接的(即使用. 或-> 运算符)。这使得结构体的使用非常直观,同时也强调了这些仅仅是样式函数所使用的参数。
另请参阅 QStyleOption 。
成员类型文档
enum QStyleOptionToolBar::StyleOptionType
该枚举用于存储样式选项类型的相关信息,并针对每个QStyleOption 子类分别定义。
| 常量 | 常量值 | 描述 |
|---|---|---|
QStyleOptionToolBar::Type | SO_ToolBar | 提供的样式选项的类型(对于此类而言为SO_ToolBar )。 |
该类型由QStyleOption 、其子类以及qstyleoption_cast()在内部使用,用于确定样式选项的类型。通常情况下,除非你想创建自己的QStyleOption 子类和自己的样式,否则无需担心这一点。
另请参阅 StyleOptionVersion 。
enum QStyleOptionToolBar::StyleOptionVersion
该枚举用于存储样式选项的版本信息,并针对每个QStyleOption 子类分别定义。
| 常量 | 常量值 | 描述 |
|---|---|---|
QStyleOptionToolBar::Version | 1 | 1 |
QStyleOption 的子类使用该版本号来实现扩展,同时保持兼容性。如果您使用qstyleoption_cast(),通常无需检查该值。
另请参阅 StyleOptionType 。
enum QStyleOptionToolBar::ToolBarFeature
flags QStyleOptionToolBar::ToolBarFeatures
此枚举用于描述工具栏是否可移动。
| 常量 | 值 | 描述 |
|---|---|---|
QStyleOptionToolBar::None | 0x0 | 工具栏不可移动。默认值。 |
QStyleOptionToolBar::Movable | 0x1 | 工具栏可移动,将鼠标悬停在工具栏边界上时会出现一个手柄。 |
ToolBarFeatures 类型是QFlags<ToolBarFeature> 的 typedef。它存储 ToolBarFeature 值的按“或”运算组合。
另请参阅 features 和QToolBar::isMovable()。
enum QStyleOptionToolBar::ToolBarPosition

此枚举用于描述工具栏行在布局中的位置,以及工具栏在该行中的位置。
同一行内位置的排序从垂直线的顶部开始,同一行内从左侧开始。各行位置的排序始终以父控件的边界边缘为基准。
| 常量 | 值 | 描述 |
|---|---|---|
QStyleOptionToolBar::Beginning | 0 | 工具栏位于行首,或者该工具栏行是多行中的第一行。只有一个工具栏(且只有一行)可以具有此位置。 |
QStyleOptionToolBar::Middle | 1 | 工具栏位于行中间,或者该工具栏行位于多行之中。可以有多个具有此位置的工具栏(和行)。 |
QStyleOptionToolBar::End | 2 | 工具栏位于行尾,或者工具栏行是多行中的最后一行。此位置只能有一个工具栏(且仅有一行)。 |
QStyleOptionToolBar::OnlyOne | 3 | 仅有一个工具栏或一行。这是positionOfLine 和positionWithinLine 变量的默认值。 |
另请参阅 positionWithinLine 和positionOfLine 。
成员函数文档
QStyleOptionToolBar::QStyleOptionToolBar()
构建一个 QStyleOptionToolBar,并将成员变量初始化为默认值。
QStyleOptionToolBar::QStyleOptionToolBar(const QStyleOptionToolBar &other)
创建other 样式选项的副本。
[noexcept default] QStyleOptionToolBar &QStyleOptionToolBar::operator=(const QStyleOptionToolBar &)
将 `other ` 通过复制赋值给此 `QStyleOptionToolBar ` 实例。
成员变量文档
QStyleOptionToolBar::ToolBarFeatures QStyleOptionToolBar::features
该变量用于表示工具栏是否可移动。
默认值为None 。
int QStyleOptionToolBar::lineWidth
该变量用于存储绘制工具栏时的线宽。
默认值为 0。
int QStyleOptionToolBar::midLineWidth
该变量用于存储绘制工具栏时的中线宽度。
默认值为 0。
QStyleOptionToolBar::ToolBarPosition QStyleOptionToolBar::positionOfLine
该变量存储工具栏行的位置。
默认值为QStyleOptionToolBar::OnlyOne 。
QStyleOptionToolBar::ToolBarPosition QStyleOptionToolBar::positionWithinLine
该变量保存了工具栏在行中的位置。
默认值为QStyleOptionToolBar::OnlyOne 。
Qt::ToolBarArea QStyleOptionToolBar::toolBarArea
该变量用于存储绘制工具栏的位置。
默认值为Qt::TopToolBarArea 。
另请参阅 Qt::ToolBarArea 。
© 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.