QPieSlice Class

QPieSlice クラスは、パイシリーズのスライスを表します。詳細...

ヘッダ #include <QPieSlice>
CMake: find_package(Qt6 REQUIRED COMPONENTS Graphs)
target_link_libraries(mytarget PRIVATE Qt6::Graphs)
qmake QT += graphs
QML で PieSlice
継承: QObject

パブリックタイプ

enum class LabelPosition { Outside, InsideHorizontal, InsideTangential, InsideNormal }

プロパティ

パブリック機能

QPieSlice(QObject *parent = nullptr)
QPieSlice(const QString &label, qreal value, QObject *parent = nullptr)
virtual ~QPieSlice() override
qreal angleSpan() const
QColor borderColor() const
qreal borderWidth() const
QColor color() const
qreal explodeDistanceFactor() const
bool isExploded() const
bool isLabelVisible() const
QString label() const
qreal labelArmLengthFactor() const
QColor labelColor() const
QFont labelFont() const
QPieSlice::LabelPosition labelPosition()
qreal percentage() const
QPieSeries *series() const
void setBorderColor(QColor color)
void setBorderWidth(qreal borderWidth)
void setColor(QColor color)
void setExplodeDistanceFactor(qreal factor)
void setExploded(bool exploded)
void setLabel(const QString &label)
void setLabelArmLengthFactor(qreal factor)
void setLabelColor(QColor color)
void setLabelFont(const QFont &font)
void setLabelPosition(QPieSlice::LabelPosition position)
void setLabelVisible(bool visible = true)
void setValue(qreal value)
qreal startAngle() const
qreal value() const

シグナル

詳細説明

パイスライスには値とラベルがあります。スライスがパイシリーズに追加されると、QPieSeries オブジェクトは、シリーズ内のすべてのスライスの合計と比較したスライスのパーセンテージを計算し、グラフ内のスライスの実際のサイズを決定します。

デフォルトでは、ラベルは非表示です。ラベルが表示されている場合、ラベルはスライスの外側に配置され、アームでスライスに接続されるか、スライスの内側に水平またはスライスの円弧の接線または法線と平行に配置されます。

デフォルトでは、スライスの外観はテーマによって設定されますが、スライスのプロパティを指定することでテーマを上書きすることができます。ただし、スライスをカスタマイズした後にテーマを変更すると、すべてのカスタマイズが失われます。

ユーザーが円グラフとインタラクションできるように、ユーザーが円グラフのスライスをクリックしたり、マウスカーソルを重ねたりすると、いくつかの基本的なシグナルが発せられます。

QPieSeriesも参照してください

メンバ型ドキュメント

enum class QPieSlice::LabelPosition

この列挙型はスライスラベルの位置を記述する。

定数説明
QPieSlice::LabelPosition::Outside0ラベルはアームで接続されたスライスの外側に位置する。これはデフォルト値です。
QPieSlice::LabelPosition::InsideHorizontal1ラベルはスライス内の中央にあり、水平に配置される。
QPieSlice::LabelPosition::InsideTangential2ラベルはスライス内の中央にあり、スライスの円弧の接線と平行になるように回転する。
QPieSlice::LabelPosition::InsideNormal3ラベルはスライス内の中央に配置され、スライスの円弧の法線と平行になるように回転される。

プロパティのドキュメント

[read-only] angleSpan : const qreal

このプロパティは、スライスのスパンを度単位で保持する。完全なパイは360度で、0度は午前12時を指す。スライスがシリーズに追加されると自動的に更新されます。

アクセス関数:

qreal angleSpan() const

通知シグナル

void angleSpanChanged()

borderColor : QColor

このプロパティは、スライスの境界線を描画するために使用される色を保持します。このプロパティは、スライスを修正するための便利なプロパティです。

アクセス関数です:

QColor borderColor() const
void setBorderColor(QColor color)

通知シグナル:

void borderColorChanged()

borderWidthも参照してください

borderWidth : qreal

このプロパティは、スライスのボーダーの幅を保持する。このプロパティは、スライスのボーダーの幅を変更するための便利なプロパティです。

アクセス関数です:

qreal borderWidth() const
void setBorderWidth(qreal borderWidth)

通知シグナル:

void borderWidthChanged()

borderColorも参照してください

color : QColor

このプロパティは、スライスの塗りつぶし色を保持する。このプロパティは、スライスの塗りつぶし色を変更するための便利なプロパティです。

アクセス関数です:

QColor color() const
void setColor(QColor color)

通知シグナル

void colorChanged()

explodeDistanceFactor : qreal

スライスがパイからどのくらい離れて爆発するかを決定する。

  • 1.0は距離が半径と同じであることを意味する。
  • 0.5は、距離が半径の半分であることを意味します。

デフォルトでは、距離は0.15です。

アクセス関数

qreal explodeDistanceFactor() const
void setExplodeDistanceFactor(qreal factor)

通知シグナル:

void explodeDistanceFactorChanged()

explodedも参照

exploded : bool

このプロパティは、スライスがパイから分離されているかどうかを保持する。

アクセス関数:

bool isExploded() const
void setExploded(bool exploded)

通知シグナル:

void explodedChanged()

explodeDistanceFactorも参照

label : QString

このプロパティはスライスのラベルを保持します。

注意: 文字列はHTMLフォーマットすることができます。

アクセス関数

QString label() const
void setLabel(const QString &label)

ノーティファイア・シグナル:

void labelChanged()

labelVisiblelabelFontlabelArmLengthFactorも参照

labelArmLengthFactor : qreal

このプロパティは、ラベルアームの長さを保持する。係数はパイの半径に対する相対値である。例えば

  • 1.0 は長さが半径と同じであることを意味します。
  • 0.5 は、長さが半径の半分であることを意味します。

デフォルトでは、アームの長さは0.15です。

アクセス機能

qreal labelArmLengthFactor() const
void setLabelArmLengthFactor(qreal factor)

通知シグナル:

void labelArmLengthFactorChanged()

labellabelVisiblelabelFontも参照のこと

labelColor : QColor

このプロパティは、スライスラベルの描画に使用される色を保持する。

アクセス関数

QColor labelColor() const
void setLabelColor(QColor color)

通知シグナル

void labelColorChanged()

labelFont : QFont

このプロパティは、ラベルテキストの描画に使用されるフォントを保持する。

アクセス関数

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

アクセス関数: Notifierシグナル:

void labelFontChanged()

labellabelVisiblelabelArmLengthFactorも参照のこと

labelPosition : LabelPosition

このプロパティは、スライスラベルの位置を保持する。

アクセス関数

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

ノーティファイアシグナル:

void labelPositionChanged()

label およびlabelVisibleも参照

labelVisible : bool

このプロパティは、スライス・ラベルの可視性を保持する。デフォルトでは、ラベルは表示されません。

アクセス関数

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

ノーティファイア・シグナル:

void labelVisibleChanged()

labellabelFontlabelArmLengthFactorも参照

[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)

ノーティファイア・シグナル:

void valueChanged()

percentage() およびQPieSeries::sum()も参照のこと

メンバ関数ドキュメント

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

空のスライスを親parent

QPieSeries::append() およびQPieSeries::insert()も参照

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

指定されたvaluelabelparent で空のスライスを構築します。

QPieSeries::append() およびQPieSeries::insert()も参照

[override virtual noexcept] QPieSlice::~QPieSlice()

スライスを削除する。スライスがシリーズに追加されている場合は削除してはならない。

QPieSeries *QPieSlice::series() const

このスライスが属するシリーズを返します。

QPieSeries::append()も参照

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