QPieSlice Class
QPieSlice 类表示派系列中的单片。更多
公共类型
enum | LabelPosition { LabelOutside, LabelInsideHorizontal, LabelInsideTangential, LabelInsideNormal } |
属性
|
|
公共功能
QPieSlice(QObject *parent = nullptr) | |
QPieSlice(QString label, qreal value, QObject *parent = nullptr) | |
virtual | ~QPieSlice() |
qreal | angleSpan() const |
QColor | borderColor() |
int | borderWidth() |
QBrush | brush() const |
QColor | color() |
qreal | explodeDistanceFactor() const |
bool | isExploded() const |
bool | isLabelVisible() const |
QString | label() const |
qreal | labelArmLengthFactor() const |
QBrush | labelBrush() const |
QColor | labelColor() |
QFont | labelFont() const |
QPieSlice::LabelPosition | labelPosition() |
QPen | pen() const |
qreal | percentage() const |
QPieSeries * | series() const |
void | setBorderColor(QColor color) |
void | setBorderWidth(int width) |
void | setBrush(const QBrush &brush) |
void | setColor(QColor color) |
void | setExplodeDistanceFactor(qreal factor) |
void | setExploded(bool exploded = true) |
void | setLabel(QString label) |
void | setLabelArmLengthFactor(qreal factor) |
void | setLabelBrush(const QBrush &brush) |
void | setLabelColor(QColor color) |
void | setLabelFont(const QFont &font) |
void | setLabelPosition(QPieSlice::LabelPosition position) |
void | setLabelVisible(bool visible = true) |
void | setPen(const QPen &pen) |
void | setValue(qreal value) |
qreal | startAngle() const |
qreal | value() const |
信号
void | angleSpanChanged() |
void | borderColorChanged() |
void | borderWidthChanged() |
void | brushChanged() |
void | clicked() |
void | colorChanged() |
void | doubleClicked() |
void | hovered(bool state) |
void | labelBrushChanged() |
void | labelChanged() |
void | labelColorChanged() |
void | labelFontChanged() |
void | labelVisibleChanged() |
void | penChanged() |
void | percentageChanged() |
void | pressed() |
void | released() |
void | startAngleChanged() |
void | valueChanged() |
详细说明
饼片有一个值和一个标签。当切片被添加到饼系列中时,QPieSeries 对象会计算该切片占该系列中所有切片总和的百分比,以确定该切片在图表中的实际大小。
默认情况下,标签是隐藏的。如果标签可见,它可以位于切片外部并用一条臂与之相连,也可以位于切片内部的中心位置,可以是水平方向,也可以是与切片圆弧的切线或法线平行的方向。
默认情况下,切片的视觉外观由主题设置,但可以通过指定切片属性来覆盖主题。不过,如果在自定义切片后更改主题,所有自定义功能都将丢失。
为了实现用户与饼图的交互,当用户点击饼片或将鼠标悬停在饼片上时,会发出一些基本信号。
另请参阅 QPieSeries 。
成员类型文档
enum QPieSlice::LabelPosition
该枚举描述切片标签的位置。
常数 | 值 | 描述 |
---|---|---|
QPieSlice::LabelOutside | 0 | 标签位于用臂连接的切片外部。这是默认值。 |
QPieSlice::LabelInsideHorizontal | 1 | 标签位于切片中心,水平放置。 |
QPieSlice::LabelInsideTangential | 2 | 标签位于切片中心,旋转后与切片圆弧的切线平行。 |
QPieSlice::LabelInsideNormal | 3 | 标签在切片内居中,旋转后与切片圆弧的法线平行。 |
属性文档
[read-only]
angleSpan : const qreal
该属性表示切片的度数跨度。一个完整的饼是 360 度,其中 0 度为 12 点钟方向。切片添加到系列后会自动更新。
访问功能:
qreal | angleSpan() const |
通知信号:
void | angleSpanChanged() |
borderColor : QColor
该属性用于保存绘制切片边框的颜色。这是一个方便的属性,用于修改切片笔。
访问功能:
QColor | borderColor() |
void | setBorderColor(QColor color) |
Notifier 信号:
void | borderColorChanged() |
另请参阅 pen 和borderWidth 。
borderWidth : int
该属性用于保存切片边框的宽度。这是一个方便的属性,用于修改切片笔。
访问函数:
int | borderWidth() |
void | setBorderWidth(int width) |
Notifier 信号:
void | borderWidthChanged() |
另请参阅 pen 和borderColor 。
brush : QBrush
此属性保存用于填充切片的笔刷。
访问功能:
QBrush | brush() const |
void | setBrush(const QBrush &brush) |
Notifier 信号:
void | brushChanged() |
color : QColor
该属性用于保存切片的填充(画笔)颜色。这是一个用于修改切片笔刷的方便属性。
访问功能:
QColor | color() |
void | setColor(QColor color) |
Notifier 信号:
void | colorChanged() |
另请参见 brush 。
explodeDistanceFactor : qreal
决定切片爆炸时离饼的距离。
- 1.0 表示距离与半径相同。
- 0.5 表示距离是半径的一半。
默认距离为 0.15
访问函数:
qreal | explodeDistanceFactor() const |
void | setExplodeDistanceFactor(qreal factor) |
另请参见 exploded 。
exploded : bool
此属性表示切片是否从馅饼中分离出来。
访问功能:
bool | isExploded() const |
void | setExploded(bool exploded = true) |
另请参阅 explodeDistanceFactor 。
label : QString
此属性包含切片的标签。
注意: 该字符串可以是 HTML 格式。
访问功能:
QString | label() const |
void | setLabel(QString label) |
Notifier 信号:
void | labelChanged() |
另请参阅 labelVisible,labelBrush,labelFont, 和labelArmLengthFactor 。
labelArmLengthFactor : qreal
此属性表示标签臂的长度。该系数相对于饼的半径。例如
- 1.0 表示长度与半径相同。
- 0.5 表示长度是半径的一半。
默认情况下,臂长为 0.15
访问功能:
qreal | labelArmLengthFactor() const |
void | setLabelArmLengthFactor(qreal factor) |
另请参阅 label,labelVisible,labelBrush, 和labelFont 。
labelBrush : QBrush
该属性保存用于绘制切片标签和标签臂的笔刷。
访问功能:
QBrush | labelBrush() const |
void | setLabelBrush(const QBrush &brush) |
Notifier 信号:
void | labelBrushChanged() |
另请参阅 label,labelVisible,labelFont, 和labelArmLengthFactor 。
labelColor : QColor
该属性保存用于绘制切片标签的颜色。这是一个方便的属性,用于修改切片标签笔刷。
访问功能:
QColor | labelColor() |
void | setLabelColor(QColor color) |
Notifier 信号:
void | labelColorChanged() |
另请参阅 labelBrush 。
labelFont : QFont
该属性用于保存绘制标签文本时使用的字体。
访问功能:
QFont | labelFont() const |
void | setLabelFont(const QFont &font) |
Notifier 信号:
void | labelFontChanged() |
另请参阅 label,labelVisible, 和labelArmLengthFactor 。
labelPosition : LabelPosition
该属性用于保存切片标签的位置。
访问功能:
QPieSlice::LabelPosition | labelPosition() |
void | setLabelPosition(QPieSlice::LabelPosition position) |
另请参阅 label 和labelVisible 。
labelVisible : bool
该属性用于设置切片标签的可见性。默认情况下,标签不可见。
访问功能:
bool | isLabelVisible() const |
void | setLabelVisible(bool visible = true) |
Notifier 信号:
void | labelVisibleChanged() |
另请参见 label,labelBrush,labelFont, 和labelArmLengthFactor 。
pen : QPen
此属性保存用于绘制切片边框的笔。
访问功能:
QPen | pen() const |
void | setPen(const QPen &pen) |
通知信号:
void | penChanged() |
[read-only]
percentage : const qreal
该属性表示切片占系列中所有切片总和的百分比。实际值范围为 0.0 至 1.0。切片添加到系列后会自动更新。
访问功能:
qreal | percentage() const |
通知信号:
void | percentageChanged() |
另请参阅 value 和QPieSeries::sum 。
[read-only]
startAngle : const qreal
该属性表示该切片在其所属系列中的起始角度。一个完整的饼是 360 度,其中 0 度为 12 点钟方向。切片添加到系列后会自动更新。
访问功能:
qreal | startAngle() const |
通知信号:
void | startAngleChanged() |
value : qreal
该属性保存片段的值。
注意: 负值会转换为正值。
访问功能:
qreal | value() const |
void | setValue(qreal value) |
Notifier 信号:
void | valueChanged() |
另请参阅 percentage() 和QPieSeries::sum() 。
成员函数文档
[explicit]
QPieSlice::QPieSlice(QObject *parent = nullptr)
用父parent 构建一个空切片。
另请参阅 QPieSeries::append() 和QPieSeries::insert() 。
QPieSlice::QPieSlice(QString label, qreal value, QObject *parent = nullptr)
用指定的value,label, 和parent 构建一个空切片。
另请参阅 QPieSeries::append() 和QPieSeries::insert() 。
[virtual noexcept]
QPieSlice::~QPieSlice()
删除片段。如果片段已添加到系列中,则不应删除。
[signal]
void QPieSlice::angleSpanChanged()
当切片的角度跨度发生变化时会发出该信号。
注: 属性angleSpan 的通知信号。
另请参见 angleSpan 。
[signal]
void QPieSlice::borderColorChanged()
当切片边框颜色发生变化时发出此信号。
注: 属性borderColor 的通知信号。
另请参阅 pen 和borderColor 。
[signal]
void QPieSlice::borderWidthChanged()
该信号在切片边框宽度发生变化时发出。
注: 属性borderWidth 的通知信号。
另请参阅 pen 和borderWidth 。
[signal]
void QPieSlice::brushChanged()
当用于填充切片的笔刷发生变化时,会发出该信号。
注: 用于brush 属性的通知信号。
另请参见 brush 。
[signal]
void QPieSlice::clicked()
该信号在切片被点击时发出。
另请参阅 QPieSeries::clicked().
[signal]
void QPieSlice::colorChanged()
当切片颜色发生变化时会发出该信号。
注: 属性color 的通知信号。
另请参阅 brush 。
[signal]
void QPieSlice::doubleClicked()
用户双击切片时会发出该信号。
另请参见 QPieSeries::doubleClicked().
[signal]
void QPieSlice::hovered(bool state)
当鼠标悬停在切片上时,就会发出该信号。当鼠标移到切片上时,state 变成true
,当鼠标再次移开时,变成false
。
另请参阅 QPieSeries::hovered() 。
[signal]
void QPieSlice::labelBrushChanged()
该信号在切片的标签刷发生变化时发出。
注: 属性labelBrush 的通知信号。
另请参阅 labelBrush 。
[signal]
void QPieSlice::labelChanged()
该信号在切片标签发生变化时发出。
注: 属性label 的通知信号。
另请参见 label 。
[signal]
void QPieSlice::labelColorChanged()
该信号在切片标签颜色发生变化时发出。
注: 属性labelColor 的通知信号。
另请参见 labelColor 。
[signal]
void QPieSlice::labelFontChanged()
当切片的标签字体发生变化时发出该信号。
注: 属性labelFont 的通知信号。
另请参阅 labelFont 。
[signal]
void QPieSlice::labelVisibleChanged()
该信号在切片标签的可见性发生变化时发出。
注: 用于labelVisible 属性的通知信号。
另请参见 labelVisible 。
[signal]
void QPieSlice::penChanged()
当用于绘制切片边框的笔发生变化时,会发出该信号。
注: 用于pen 属性的通知信号。
另请参见 pen 。
[signal]
void QPieSlice::percentageChanged()
当切片的百分比发生变化时会发出该信号。
注: 属性percentage 的通知信号。
另请参阅 percentage 。
[signal]
void QPieSlice::pressed()
当用户点击切片并按住鼠标键时会发出该信号。
另请参阅 QPieSeries::pressed().
[signal]
void QPieSlice::released()
当用户松开按在切片上的鼠标时会发出该信号。
另请参见 QPieSeries::released()。
QPieSeries *QPieSlice::series() const
返回此切片所属的系列。
另请参阅 QPieSeries::append()。
[signal]
void QPieSlice::startAngleChanged()
当切片的起始角度发生变化时会发出该信号。
注: 属性startAngle 的通知信号。
另请参见 startAngle 。
[signal]
void QPieSlice::valueChanged()
该信号在切片值发生变化时发出。
注: 用于属性value 的通知信号。
另请参见 value 。
© 2025 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.