En esta página

QPieSlice Class

La clase QPieSlice representa una única porción de una serie de tartas. Más...

Header: #include <QPieSlice>
In QML: PieSlice
Inherits: QObject

Tipos públicos

enum LabelPosition { LabelOutside, LabelInsideHorizontal, LabelInsideTangential, LabelInsideNormal }

Propiedades

Funciones públicas

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

Señales

Descripción detallada

Una porción de tarta tiene un valor y una etiqueta. Cuando la porción se añade a una serie de tarta, el objeto QPieSeries calcula el porcentaje de la porción comparado con la suma de todas las porciones de la serie para determinar el tamaño real de la porción en el gráfico.

Por defecto, la etiqueta está oculta. Si es visible, puede estar situada fuera de la rebanada y conectada a ella con un brazo o centrada dentro de la rebanada horizontalmente o en paralelo con la tangencial o la normal del arco de la rebanada.

Por defecto, el aspecto visual de la rebanada se establece mediante un tema, pero éste puede anularse especificando las propiedades de la rebanada. Sin embargo, si se cambia el tema después de personalizar las rebanadas, se perderá toda la personalización.

Para permitir la interacción del usuario con el gráfico circular, se emiten algunas señales básicas cuando el usuario hace clic en las porciones o pasa el ratón sobre ellas.

Véase también QPieSeries.

Documentación de tipos de miembros

enum QPieSlice::LabelPosition

Este enum describe la posición de la etiqueta de corte.

ConstanteValorDescripción
QPieSlice::LabelOutside0La etiqueta se encuentra fuera de la rebanada conectada a ella con un brazo. Este es el valor por defecto.
QPieSlice::LabelInsideHorizontal1La etiqueta está centrada dentro del corte y dispuesta horizontalmente.
QPieSlice::LabelInsideTangential2La etiqueta está centrada en el corte y girada en paralelo a la tangente del arco del corte.
QPieSlice::LabelInsideNormal3La etiqueta se centra en el corte y se gira para que sea paralela a la normal del arco del corte.

Documentación de propiedades

[read-only] angleSpan : qreal

Esta propiedad mantiene la amplitud de la rebanada en grados. Una tarta completa tiene 360 grados, donde 0 grados está a las 12 en punto. Se actualiza automáticamente cuando la porción se añade a la serie.

Funciones de acceso:

qreal angleSpan() const

Señal del notificador:

borderColor : QColor

Esta propiedad contiene el color utilizado para dibujar el borde del corte. Se trata de una propiedad muy útil para modificar el lápiz del corte.

Funciones de acceso:

QColor borderColor()
void setBorderColor(QColor color)

Señal del notificador:

Véase también pen y borderWidth.

borderWidth : int

Esta propiedad contiene el ancho del borde del corte. Es una propiedad muy útil para modificar el lápiz de la rebanada.

Funciones de acceso:

int borderWidth()
void setBorderWidth(int width)

Señal del notificador:

Véase también pen y borderColor.

brush : QBrush

Esta propiedad contiene el pincel utilizado para rellenar el corte.

Funciones de acceso:

QBrush brush() const
void setBrush(const QBrush &brush)

Señal del notificador:

void brushChanged()

color : QColor

Esta propiedad contiene el color de relleno (pincel) de la rebanada. Esta es una propiedad conveniente para modificar el pincel de la rebanada.

Funciones de acceso:

QColor color()
void setColor(QColor color)

Señal del notificador:

void colorChanged()

Véase también brush.

explodeDistanceFactor : qreal

Determina a qué distancia de la tarta explota la rebanada.

  • 1.0 significa que la distancia es igual al radio.
  • 0.5 significa que la distancia es la mitad del radio.

Por defecto, la distancia es 0.15

Funciones de acceso:

qreal explodeDistanceFactor() const
void setExplodeDistanceFactor(qreal factor)

Véase también exploded.

exploded : bool

Esta propiedad indica si la rebanada está separada del pastel.

Funciones de acceso:

bool isExploded() const
void setExploded(bool exploded = true)

Véase también explodeDistanceFactor.

label : QString

Esta propiedad contiene la etiqueta del corte.

Nota: La cadena puede tener formato HTML.

Funciones de acceso:

QString label() const
void setLabel(QString label)

Señal del notificador:

void labelChanged()

Véase también labelVisible, labelBrush, labelFont, y labelArmLengthFactor.

labelArmLengthFactor : qreal

Esta propiedad contiene la longitud del brazo de la etiqueta. El factor es relativo al radio del pastel. Por ejemplo

  • 1.0 significa que la longitud es igual al radio.
  • 0,5 significa que la longitud es la mitad del radio.

Por defecto, la longitud del brazo es 0.15

Funciones de acceso:

qreal labelArmLengthFactor() const
void setLabelArmLengthFactor(qreal factor)

Véase también label, labelVisible, labelBrush, y labelFont.

labelBrush : QBrush

Esta propiedad contiene el pincel utilizado para dibujar la etiqueta y el brazo de la etiqueta de la rebanada.

Funciones de acceso:

QBrush labelBrush() const
void setLabelBrush(const QBrush &brush)

Señal del notificador:

Véase también label, labelVisible, labelFont, y labelArmLengthFactor.

labelColor : QColor

Esta propiedad contiene el color utilizado para dibujar la etiqueta de corte. Es una propiedad muy útil para modificar el pincel de la etiqueta de corte.

Funciones de acceso:

QColor labelColor()
void setLabelColor(QColor color)

Señal del notificador:

Véase también labelBrush.

labelFont : QFont

Esta propiedad contiene la fuente utilizada para dibujar el texto de la etiqueta.

Funciones de acceso:

QFont labelFont() const
void setLabelFont(const QFont &font)

Señal del notificador:

Véase también label, labelVisible, y labelArmLengthFactor.

labelPosition : LabelPosition

Esta propiedad contiene la posición de la etiqueta de la rebanada.

Funciones de acceso:

QPieSlice::LabelPosition labelPosition()
void setLabelPosition(QPieSlice::LabelPosition position)

Véase también label y labelVisible.

labelVisible : bool

Esta propiedad contiene la visibilidad de la etiqueta de la rebanada. Por defecto, la etiqueta no es visible.

Funciones de acceso:

bool isLabelVisible() const
void setLabelVisible(bool visible = true)

Señal del notificador:

Véase también label, labelBrush, labelFont, y labelArmLengthFactor.

pen : QPen

Esta propiedad contiene el lápiz utilizado para dibujar el borde del corte.

Funciones de acceso:

QPen pen() const
void setPen(const QPen &pen)

Señal del notificador:

void penChanged()

[read-only] percentage : qreal

Esta propiedad contiene el porcentaje de la rebanada en comparación con la suma de todas las rebanadas de la serie. El valor real oscila entre 0,0 y 1,0. Se actualiza automáticamente cuando se añade el trozo a la serie.

Funciones de acceso:

qreal percentage() const

Señal del notificador:

Véase también value y QPieSeries::sum.

[read-only] startAngle : qreal

Esta propiedad mantiene el ángulo inicial de esta rebanada en la serie a la que pertenece. Una tarta completa tiene 360 grados, donde 0 grados está a las 12 en punto. Se actualiza automáticamente cuando la porción se añade a la serie.

Funciones de acceso:

qreal startAngle() const

Señal del notificador:

value : qreal

Esta propiedad contiene el valor de la rebanada.

Nota: Un valor negativo se convierte en positivo.

Funciones de acceso:

qreal value() const
void setValue(qreal value)

Señal del notificador:

void valueChanged()

Véase también percentage() y QPieSeries::sum().

Documentación de las funciones miembro

[explicit] QPieSlice::QPieSlice(QObject *parent = nullptr)

Construye una rebanada vacía con el padre parent.

Véase también QPieSeries::append() y QPieSeries::insert().

QPieSlice::QPieSlice(QString label, qreal value, QObject *parent = nullptr)

Construye una rebanada vacía con los datos especificados value, label, y parent.

Véase también QPieSeries::append() y QPieSeries::insert().

[virtual noexcept] QPieSlice::~QPieSlice()

Elimina el corte. El corte no debe eliminarse si se ha añadido a una serie.

[signal] void QPieSlice::angleSpanChanged()

Esta señal se emite cuando cambia el ángulo de la rebanada.

Nota: Señal notificadora para la propiedad angleSpan.

Véase también angleSpan.

[signal] void QPieSlice::borderColorChanged()

Esta señal se emite cuando cambia el color del borde del corte.

Nota: Señal notificadora para la propiedad borderColor.

Véase también pen y borderColor.

[signal] void QPieSlice::borderWidthChanged()

Esta señal se emite cuando cambia el ancho del borde del corte.

Nota: Señal notificadora para la propiedad borderWidth.

Véase también pen y borderWidth.

[signal] void QPieSlice::brushChanged()

Esta señal se emite cuando cambia el pincel utilizado para rellenar el corte.

Nota: Señal notificadora para la propiedad brush.

Véase también brush.

[signal] void QPieSlice::clicked()

Esta señal se emite cuando se hace clic en el corte.

Véase también QPieSeries::clicked().

[signal] void QPieSlice::colorChanged()

Esta señal se emite cuando cambia el color del corte.

Nota: Señal notificadora para la propiedad color.

Véase también brush.

[signal] void QPieSlice::doubleClicked()

Esta señal se emite cuando el usuario hace doble clic en el slice.

Véase también QPieSeries::doubleClicked().

[signal] void QPieSlice::hovered(bool state)

Esta señal se emite cuando se pasa el ratón por encima de la rebanada. Cuando el ratón se mueve sobre la rebanada, state se convierte en true, y cuando el ratón se aleja de nuevo, se convierte en false.

Véase también QPieSeries::hovered().

[signal] void QPieSlice::labelBrushChanged()

Esta señal se emite cuando cambia el pincel de la etiqueta de la rebanada.

Nota: Señal notificadora para la propiedad labelBrush.

Véase también labelBrush.

[signal] void QPieSlice::labelChanged()

Esta señal se emite cuando cambia la etiqueta de la rebanada.

Nota: Señal notificadora para la propiedad label.

Véase también label.

[signal] void QPieSlice::labelColorChanged()

Esta señal se emite cuando cambia el color de la etiqueta del corte.

Nota: Señal notificadora para la propiedad labelColor.

Véase también labelColor.

[signal] void QPieSlice::labelFontChanged()

Esta señal se emite cuando cambia la fuente de la etiqueta de la rebanada.

Nota: Señal notificadora para la propiedad labelFont.

Véase también labelFont.

[signal] void QPieSlice::labelVisibleChanged()

Esta señal se emite cuando cambia la visibilidad de la etiqueta slice.

Nota: Señal notificadora para la propiedad labelVisible.

Véase también labelVisible.

[signal] void QPieSlice::penChanged()

Esta señal se emite cuando cambia el lápiz utilizado para dibujar el borde del corte.

Nota: Señal notificadora para la propiedad pen.

Véase también pen.

[signal] void QPieSlice::percentageChanged()

Esta señal se emite cuando cambia el porcentaje de la rebanada.

Nota: Señal notificadora para la propiedad percentage.

Véase también percentage.

[signal] void QPieSlice::pressed()

Esta señal se emite cuando el usuario hace clic en la rebanada y mantiene pulsado el botón del ratón.

Véase también QPieSeries::pressed().

[signal] void QPieSlice::released()

Esta señal se emite cuando el usuario suelta la presión del ratón sobre la rebanada.

Véase también QPieSeries::released().

QPieSeries *QPieSlice::series() const

Devuelve la serie a la que pertenece esta rebanada.

Véase también QPieSeries::append().

[signal] void QPieSlice::startAngleChanged()

Esta señal se emite cuando cambia el ángulo inicial del corte.

Nota: Señal notificadora para la propiedad startAngle.

Véase también startAngle.

[signal] void QPieSlice::valueChanged()

Esta señal se emite cuando cambia el valor del slice.

Nota: Señal notificadora para la propiedad value.

Véase también value.

© 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.