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 |
- 継承メンバを含む全メンバのリスト
- QPieSlice はQt Graphs C++ Classes for 2D に含まれます。
パブリックタイプ
| 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 |
| bool | append(QPieSlice *slice) |
| bool | append(const QList<QPieSlice *> &slices) |
| QPieSlice * | append(const QString &label, qreal value) |
| QPieSlice * | at(qsizetype index) const |
| QColor | borderColor() const |
| qreal | borderWidth() const |
| QColor | color() const |
| qreal | explodeDistanceFactor() const |
| QPieSlice * | find(const QString &label) const |
| bool | insert(qsizetype index, QPieSlice *slice) |
| bool | isEmpty() 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 |
| bool | remove(QPieSlice *slice) |
| bool | remove(qsizetype index) |
| void | removeMultiple(qsizetype index, int count) |
| bool | replace(QPieSlice *oldSlice, QPieSlice *newSlice) |
| bool | replace(qsizetype index, QPieSlice *slice) |
| bool | replaceAll(const QList<QPieSlice *> &slices) |
| 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 | setSubSlicesRatio(qreal subSlicesRatio) |
| void | setValue(qreal value) |
| QQmlListProperty<QPieSlice> | sliceChildren() |
| qreal | startAngle() const |
| QList<QPieSlice *> | subSlices() const |
| qsizetype | subSlicesCount() const |
| qreal | subSlicesRatio() const |
| qreal | subSlicesSum() const |
| bool | take(QPieSlice *slice) |
| qreal | value() const |
パブリックスロット
| void | clear() |
シグナル
| void | angleSpanChanged() |
| void | borderColorChanged() |
| void | borderWidthChanged() |
| void | colorChanged() |
| void | explodeDistanceFactorChanged() |
| void | explodedChanged() |
| void | labelArmLengthFactorChanged() |
| void | labelChanged() |
| void | labelColorChanged() |
| void | labelFontChanged() |
| void | labelPositionChanged() |
| void | labelVisibleChanged() |
| void | percentageChanged() |
| void | startAngleChanged() |
| void | subSlicesAdded(const QList<QPieSlice *> &slices) |
| void | subSlicesCountChanged(qsizetype count) |
| void | subSlicesRatioChanged(qreal newSubSlicesRatio) |
| void | subSlicesRemoved(const QList<QPieSlice *> &slices) |
| void | subSlicesSumChanged(qreal sum) |
| void | valueChanged() |
詳細説明
パイスライスには値とラベルがあります。スライスがパイシリーズに追加されると、QPieSeries オブジェクトは、シリーズ内のすべてのスライスの合計と比較したスライスのパーセンテージを計算し、グラフ内のスライスの実際のサイズを決定します。
デフォルトでは、ラベルは非表示です。ラベルが表示されている場合、ラベルはスライスの外側に配置され、アームでスライスに接続されるか、スライスの内側に水平またはスライスの円弧の接線または法線と平行に配置されます。
デフォルトでは、スライスの外観はテーマによって設定されますが、スライスのプロパティを指定することでテーマを上書きすることができます。ただし、スライスをカスタマイズした後にテーマを変更すると、すべてのカスタマイズが失われます。
ユーザーが円グラフとインタラクションできるように、ユーザーが円グラフのスライスをクリックしたり、マウスカーソルを重ねたりすると、いくつかの基本的なシグナルが発せられます。
パイスライスはサブスライスを含むことができます。
QPieSeriesも参照してください 。
メンバ型ドキュメント
enum class QPieSlice::LabelPosition
この列挙型はスライスラベルの位置を記述する。
| 定数 | 値 | 説明 |
|---|---|---|
QPieSlice::LabelPosition::Outside | 0 | ラベルはアームで接続されたスライスの外側に位置する。これはデフォルト値です。 |
QPieSlice::LabelPosition::InsideHorizontal | 1 | ラベルはスライス内の中央にあり、水平に配置される。 |
QPieSlice::LabelPosition::InsideTangential | 2 | ラベルはスライス内の中央にあり、スライスの円弧の接線と平行になるように回転する。 |
QPieSlice::LabelPosition::InsideNormal | 3 | ラベルはスライス内の中央に配置され、スライスの円弧の法線と平行になるように回転される。 |
プロパティのドキュメント
[read-only] angleSpan : 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() |
label : QString
このプロパティはスライスのラベルを保持します。
注意: 文字列はHTMLフォーマットすることができます。
アクセス関数
| QString | label() const |
| void | setLabel(const QString &label) |
ノーティファイア・シグナル:
| void | labelChanged() |
labelVisible 、labelFont 、labelArmLengthFactorも参照 。
labelArmLengthFactor : qreal
このプロパティは、ラベルアームの長さを保持する。係数はパイの半径に対する相対値である。例えば
- 1.0 は長さが半径と同じであることを意味します。
- 0.5 は、長さが半径の半分であることを意味します。
デフォルトでは、アームの長さは0.15です。
アクセス機能
| qreal | labelArmLengthFactor() const |
| void | setLabelArmLengthFactor(qreal factor) |
通知シグナル:
| void | labelArmLengthFactorChanged() |
label 、labelVisible 、labelFontも参照のこと 。
labelColor : QColor
このプロパティは、スライスラベルの描画に使用される色を保持する。
アクセス関数
| QColor | labelColor() const |
| void | setLabelColor(QColor color) |
通知シグナル
| void | labelColorChanged() |
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) |
ノーティファイアシグナル:
| void | labelPositionChanged() |
label およびlabelVisibleも参照 。
labelVisible : bool
このプロパティは、スライス・ラベルの可視性を保持する。デフォルトでは、ラベルは表示されません。
アクセス関数
| bool | isLabelVisible() const |
| void | setLabelVisible(bool visible = true) |
ノーティファイア・シグナル:
| void | labelVisibleChanged() |
label 、labelFont 、labelArmLengthFactorも参照 。
[read-only] percentage : qreal
このプロパティは、シリーズ内の全スライスの合計に対するスライスのパーセンテージを保持する。実際の値の範囲は0.0から1.0です。スライスがシリーズに追加されると自動的に更新される。
アクセス関数:
| qreal | percentage() const |
通知シグナル:
| void | percentageChanged() |
value およびQPieSeries::sumも参照 。
[read-only] sliceChildren : QQmlListProperty<QPieSlice>
このスライスに含まれるサブスライスのリスト。これはデフォルトのプロパティで、children プロパティ名を明示的に使わなくても、QML のスライス要素内でサブスライスを指定することができます。
アクセス関数です:
| QQmlListProperty<QPieSlice> | sliceChildren() |
[read-only] startAngle : qreal
このプロパティは、このスライスが属するシリーズの開始角度を保持する。完全なパイは360度であり、0度は12時の方向である。スライスがシリーズに追加されると自動的に更新されます。
アクセス関数:
| qreal | startAngle() const |
通知シグナル:
| void | startAngleChanged() |
[read-only] subSlicesCount : qsizetype
このプロパティは、スライス内のサブスライス数を保持する。
アクセス関数
| qsizetype | subSlicesCount() const |
通知シグナル
| void | subSlicesCountChanged(qsizetype count) |
subSlicesRatio : qreal
親スライスに対するサブスライスの相対サイズ。値の範囲は0.0から1.0で、1.0はサブスライスがない場合の親スライスと同じスペースをサブスライスが占めることを意味します。デフォルト値は0.6です。
アクセス関数:
| qreal | subSlicesRatio() const |
| void | setSubSlicesRatio(qreal subSlicesRatio) |
通知シグナル:
| void | subSlicesRatioChanged(qreal newSubSlicesRatio) |
[read-only] subSlicesSum : qreal
このプロパティは全てのサブスライスの合計を保持する。
スライスは、それが保持するすべてのサブスライスの合計を追跡します。
アクセス関数
| qreal | subSlicesSum() const |
通知シグナル
| void | subSlicesSumChanged(qreal sum) |
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)
指定されたvalue 、label 、parent で空のスライスを構築します。
QPieSeries::append() およびQPieSeries::insert()も参照 。
[override virtual noexcept] QPieSlice::~QPieSlice()
スライスを削除する。スライスがシリーズに追加されている場合は削除してはならない。
[invokable] bool QPieSlice::append(QPieSlice *slice)
slice で指定されたサブスライスをスライスに追加します。サブスライスの所有権はスライスに渡されます。
追加に成功すればtrue を返します。
注: この関数はメタオブジェクトシステムやQMLから呼び出すことができます。Q_INVOKABLE を参照してください。
[invokable] bool QPieSlice::append(const QList<QPieSlice *> &slices)
slices で指定されたサブスライスの配列をスライスに追加します。サブスライスの所有権はスライスに渡されます。
追加に成功すればtrue を返します。
Note: この関数はメタオブジェクトシステムや QML から呼び出すことができます。Q_INVOKABLE を参照してください。
[invokable] QPieSlice *QPieSlice::append(const QString &label, qreal value)
指定されたvalue とlabel を持つ単一のサブスライスをスライスに追加します。サブスライスの所有権はスライスに渡されます。value がNaN 、Inf 、-Inf の場合は null を返し、シリーズに何も追加しません。
注: この関数はメタオブジェクトシステムやQMLから呼び出すことができます。Q_INVOKABLE を参照してください。
[invokable] QPieSlice *QPieSlice::at(qsizetype index) const
index の位置にあるPieSlice を返す。PieSlice が見つからない場合は null を返す。
注意: この関数はメタオブジェクトシステムやQMLから呼び出すことができます。Q_INVOKABLE を参照してください。
[slot] void QPieSlice::clear()
スライスからすべてのサブスライスを消去する。
[invokable] QPieSlice *QPieSlice::find(const QString &label) const
ラベルlabel を含むPieSlice を検索する。見つかればPieSlice を返し、見つからなければ null を返す。
注意: この関数はメタオブジェクトシステムやQMLから呼び出すことができます。Q_INVOKABLE を参照してください。
[invokable] bool QPieSlice::insert(qsizetype index, QPieSlice *slice)
index で指定された位置にあるサブスライスの前に、slice で指定されたサブスライスを挿入します。サブ・スライスの所有権はスライスに渡されます。
挿入に成功すればtrue を返します。
注: この関数はメタオブジェクトシステムやQMLから呼び出すことができます。Q_INVOKABLE を参照してください。
bool QPieSlice::isEmpty() const
サブスライスリストが空の場合はtrue を返します。
[invokable] bool QPieSlice::remove(QPieSlice *slice)
slice で指定された1つのサブ・スライスをスライスから削除し、永久に削除する。
このポインタはこの呼び出しの後には参照できない。
削除に成功した場合はtrue を返します。
注意: この関数はメタオブジェクトシステムやQMLから呼び出すことができます。Q_INVOKABLE を参照してください。
[invokable] bool QPieSlice::remove(qsizetype index)
index にあるPieSlice を削除する。PieSlice は永久に削除される。削除に成功した場合はtrue を返します。
注意: この関数はメタオブジェクトシステムやQMLから呼び出すことができます。Q_INVOKABLE を参照してください。
[invokable] void QPieSlice::removeMultiple(qsizetype index, int count)
index からcount までのスライスから複数の PieSlices を削除します。 PieSlices は永久に削除されます。
注意: この関数はメタオブジェクトシステムや QML から呼び出すことができます。Q_INVOKABLE を参照してください。
[invokable] bool QPieSlice::replace(QPieSlice *oldSlice, QPieSlice *newSlice)
スライス内にPieSlice oldSlice があれば、それをnewSlice に置き換えます。oldSlice は永久に削除されます。置き換えに成功した場合はtrue を返します。
注意: この関数はメタオブジェクトシステムやQMLから呼び出すことができます。Q_INVOKABLE を参照してください。
[invokable] bool QPieSlice::replace(qsizetype index, QPieSlice *slice)
位置index のPieSlice をslice で指定されたものに置き換える。元のPieSlice は永久に削除されます。PieSlices の置き換えに失敗した場合はfalse を返します。
注意: この関数はメタオブジェクトシステムや QML から呼び出すことができます。Q_INVOKABLE を参照してください。
[invokable] bool QPieSlice::replaceAll(const QList<QPieSlice *> &slices)
スライス内のパイスライスのリスト全体をslices で指定されたリストで置き換えます。元の PieSlices はすべて永久に削除されます。すべての PieSlices が正常に置換された場合、true を返します。
注意: この関数はメタオブジェクトシステムや QML から呼び出すことができます。Q_INVOKABLE を参照してください。
QPieSeries *QPieSlice::series() const
このスライスが属するシリーズを返します。
QPieSeries::append()も参照 。
QList<QPieSlice *> QPieSlice::subSlices() const
このスライスに属するサブスライスのリストを返します。
[signal] void QPieSlice::subSlicesAdded(const QList<QPieSlice *> &slices)
このシグナルは、slices で指定されたサブスライスがスライスに追加されたときに発せられる。
append()も参照してください 。
qsizetype QPieSlice::subSlicesCount() const
このスライスに含まれるサブスライスの数を返します。
注: プロパティ subSlicesCount のゲッター関数です。
[signal] void QPieSlice::subSlicesRemoved(const QList<QPieSlice *> &slices)
このシグナルは、slices で指定されたサブスライスがスライスから取り除かれたときに発せられる。
remove()も参照してください 。
qreal QPieSlice::subSlicesSum() const
このスライス内のすべてのサブスライス値の合計を返します。
注: プロパティ subSlicesSum のゲッター関数です。
QPieSlice::value(),QPieSlice::setValue(),QPieSlice::percentage()も参照 。
[invokable] bool QPieSlice::take(QPieSlice *slice)
slice で指定された1つのサブスライスをシリーズから取り出します。スライスオブジェクトは削除しません。
メモ: スライスはスライスの親オブジェクトのままです。完全な所有権を取得するには親オブジェクトを設定する必要があります。
take 操作が成功した場合、true を返します。
注意: この関数はメタオブジェクトシステムやQMLから呼び出すことができます。Q_INVOKABLE を参照してください。
© 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.