このページでは

QBarDataProxy Class

QBarDataProxy クラスは、3D 棒グラフ用のデータプロキシです。詳細...

ヘッダー: #include <QBarDataProxy>
CMake: find_package(Qt6 REQUIRED COMPONENTS DataVisualization)
target_link_libraries(mytarget PRIVATE Qt6::DataVisualization)
qmake: QT += datavisualization
バージョン: QtDataVisualization 1.0
QMLでのバージョン: BarDataProxy
継承元: QAbstractDataProxy
継承元:

QItemModelBarDataProxy

ステータス: 非推奨

このクラスは非推奨です。新しいコードでの使用は強く推奨しません。

プロパティ

パブリック関数

QBarDataProxy(QObject *parent = nullptr)
virtual ~QBarDataProxy()
int addRow(QBarDataRow *row)
int addRow(QBarDataRow *row, const QString &label)
int addRows(const QBarDataArray &rows)
int addRows(const QBarDataArray &rows, const QStringList &labels)
const QBarDataArray *array() const
QStringList columnLabels() const
void insertRow(int rowIndex, QBarDataRow *row)
void insertRow(int rowIndex, QBarDataRow *row, const QString &label)
void insertRows(int rowIndex, const QBarDataArray &rows)
void insertRows(int rowIndex, const QBarDataArray &rows, const QStringList &labels)
const QBarDataItem *itemAt(const QPoint &position) const
const QBarDataItem *itemAt(int rowIndex, int columnIndex) const
void removeRows(int rowIndex, int removeCount, bool removeLabels = true)
void resetArray()
void resetArray(QBarDataArray *newArray)
void resetArray(QBarDataArray *newArray, const QStringList &rowLabels, const QStringList &columnLabels)
const QBarDataRow *rowAt(int rowIndex) const
int rowCount() const
QStringList rowLabels() const
QBar3DSeries *series() const
void setColumnLabels(const QStringList &labels)
void setItem(const QPoint &position, const QBarDataItem &item)
void setItem(int rowIndex, int columnIndex, const QBarDataItem &item)
void setRow(int rowIndex, QBarDataRow *row)
void setRow(int rowIndex, QBarDataRow *row, const QString &label)
void setRowLabels(const QStringList &labels)
void setRows(int rowIndex, const QBarDataArray &rows)
void setRows(int rowIndex, const QBarDataArray &rows, const QStringList &labels)

シグナル

void arrayReset()
void columnLabelsChanged()
void itemChanged(int rowIndex, int columnIndex)
void rowCountChanged(int count)
void rowLabelsChanged()
void rowsAdded(int startIndex, int count)
void rowsChanged(int startIndex, int count)
void rowsInserted(int startIndex, int count)
void rowsRemoved(int startIndex, int count)
void seriesChanged(QBar3DSeries *series)

詳細な説明

バーデータプロキシは、データ行の追加、挿入、変更、および削除を処理します。

データ配列は、QBarDataItem インスタンスのベクトル(行)のリストです。各行には、異なる数の項目が含まれることもあれば、nullである場合もあります。

QBarDataProxy は、直接または QtDataVisualization::QBarDataArray コンテナを介して渡されたすべての QtDataVisualization::QBarDataRow オブジェクトの所有権を取得します。配列をプロキシに追加した後、バーデータ行のポインタを使用してデータを直接変更する場合は、グラフを更新するために適切なシグナルを発行する必要があります。

QBarDataProxyは、オプションで行および列のラベルを追跡し、QCategory3DAxis はこれを利用して軸ラベルを表示することができます。 行ラベルと列ラベルはデータとは別の配列に格納されており、行操作メソッドには行ラベルに影響を与えない代替バージョンが用意されています。これにより、データそのものではなく、配列内のデータの位置に関連付けられた行ラベルを設定することが可能になります。

「Qt Data Visualization データ処理」も参照してください 。

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

columnLabels : QStringList

このプロパティには、配列のオプションの列ラベルが格納されます。

この配列のインデックスは、行の列インデックスと一致します。リストの長さが最も長い行の長さよりも短い場合、すべての列にラベルが付与されるわけではありません。

アクセス関数:

QStringList columnLabels() const
void setColumnLabels(const QStringList &labels)

通知シグナル:

void columnLabelsChanged()

[read-only] rowCount : int

このプロパティは、配列の行数を保持します。

アクセス関数:

int rowCount() const

通知シグナル:

void rowCountChanged(int count)

rowLabels : QStringList

このプロパティには、配列のオプションの行ラベルが格納されます。

この配列のインデックスは、データ配列の行インデックスと一致します。リストが行数よりも少ない場合、すべての行にラベルが付与されるわけではありません。

アクセス関数:

QStringList rowLabels() const
void setRowLabels(const QStringList &labels)

通知信号:

void rowLabelsChanged()

[read-only] series : QBar3DSeries*

このプロパティには、このプロキシが紐付けられている系列が格納されます。

アクセス関数:

QBar3DSeries *series() const

通知シグナル:

void seriesChanged(QBar3DSeries *series)

メンバ関数のドキュメント

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

指定されたparent を使用して、棒グラフデータプロキシを構築します。

[virtual noexcept] QBarDataProxy::~QBarDataProxy()

バーデータプロキシを削除します。

int QBarDataProxy::addRow(QBarDataRow *row)

配列の末尾に新しい行「row 」を追加します。既存の行ラベルには影響しません。

追加された行のインデックスを返します。

int QBarDataProxy::addRow(QBarDataRow *row, const QString &label)

配列の末尾に、ラベル「label 」を持つ新しい行「row 」を追加します。

追加された行のインデックスを返します。

int QBarDataProxy::addRows(const QBarDataArray &rows)

新しいrows を配列の末尾に追加します。既存の行ラベルには影響しません。

追加された最初の行のインデックスを返します。

int QBarDataProxy::addRows(const QBarDataArray &rows, const QStringList &labels)

配列の末尾に、labels を持つ新しいrows を追加します。

追加された最初の行のインデックスを返します。

const QBarDataArray *QBarDataProxy::array() const

データ配列へのポインタを返します。

[signal] void QBarDataProxy::arrayReset()

このシグナルは、データ配列がリセットされたときに発せられます。resetArray() を呼び出さずに配列全体の内容を変更した場合は、グラフを更新するためにこのシグナルを発する必要があります。

void QBarDataProxy::insertRow(int rowIndex, QBarDataRow *row)

新しい行 `row ` を `rowIndex` に挿入します。`rowIndex ` が配列のサイズと等しい場合、行は配列の末尾に追加されます。既存の行ラベルには影響しません。

注: 挿入された行より先にラベル付き行が存在する場合、この呼び出しの後、行ラベル配列と 行配列の同期が失われます。

void QBarDataProxy::insertRow(int rowIndex, QBarDataRow *row, const QString &label)

ラベルが `label ` の新しい行 `row ` を `rowIndex` に挿入します。rowIndex が配列のサイズと等しい場合、行は配列の末尾に追加されます。

void QBarDataProxy::insertRows(int rowIndex, const QBarDataArray &rows)

新しいrows をrowIndex に挿入します。rowIndex が配列のサイズと等しい場合、行は配列の末尾に追加されます。既存の行ラベルには影響しません。

注: 挿入された行の後にラベルが付けられた行が存在する場合、この呼び出しの後、行ラベルの 配列と 行の配列との同期が失われます。

void QBarDataProxy::insertRows(int rowIndex, const QBarDataArray &rows, const QStringList &labels)

rowIndex に、labels を含む新しいrows を挿入します。rowIndex が配列のサイズと等しい場合、行は配列の末尾に追加されます。

const QBarDataItem *QBarDataProxy::itemAt(const QPoint &position) const

位置 `position` にある項目へのポインタを返します。position の x 値は行を、y 値は列を示します。この項目が有効であることは、データを変更する次の呼び出しが行われるまで保証されます。

const QBarDataItem *QBarDataProxy::itemAt(int rowIndex, int columnIndex) const

rowIndex およびcolumnIndex で指定された位置にある項目へのポインタを返します。このポインタが有効であるのは、データを変更する次の呼び出しが行われるまでであることが保証されています。

[signal] void QBarDataProxy::itemChanged(int rowIndex, int columnIndex)

このシグナルは、rowIndex およびcolumnIndex で指定された位置にある項目が変更されたときに発せられます。setItem() を呼び出さずに配列内の項目を変更した場合、グラフを更新するためにこのシグナルを発する必要があります。

void QBarDataProxy::removeRows(int rowIndex, int removeCount, bool removeLabels = true)

`removeCount ` で指定された行数を、位置 `rowIndex` から削除します。配列の末尾より先の行を削除しようとしても、何も起こりません。`removeLabels ` が `true` の場合、対応する行ラベルも削除されます。それ以外の場合は、行ラベルには影響しません。

注: removeLabels がfalseの場合 、削除された行の先に行ラベルが付いた行が存在すると、行ラベル配列と行配列の同期がずれてしまいます。

void QBarDataProxy::resetArray()

既存の配列および行・列のラベルをクリアします。

void QBarDataProxy::resetArray(QBarDataArray *newArray)

配列newArray の所有権を取得します。新しい配列が既存の配列と異なる場合、既存の配列をクリアします。配列が同一の場合、この関数は単にarrayReset()シグナルをトリガーするだけです。

null配列を渡すと、古い配列が削除され、新しい空の配列が作成されます。行および列のラベルには影響しません。

void QBarDataProxy::resetArray(QBarDataArray *newArray, const QStringList &rowLabels, const QStringList &columnLabels)

配列newArray を所有します。新しい配列が既存の配列と異なる場合、既存の配列をクリアします。配列が同じ場合、この関数は単にarrayReset()シグナルをトリガーするだけです。

null配列を渡すと、古い配列が削除され、新しい空の配列が作成されます。

rowLabels およびcolumnLabels のリストは、行と列の新しいラベルを指定します。

const QBarDataRow *QBarDataProxy::rowAt(int rowIndex) const

位置rowIndex にある行へのポインタを返します。このポインタが有効なのは、データを変更する次の呼び出しが行われるまでであることが保証されています。

[signal] void QBarDataProxy::rowsAdded(int startIndex, int count)

このシグナルは、startIndex の位置から、count で指定された行数が追加されたときに発せられます。addRow() またはaddRows() を呼び出さずに配列に行が追加された場合、グラフを更新するためにこのシグナルを発する必要があります。

[signal] void QBarDataProxy::rowsChanged(int startIndex, int count)

このシグナルは、`count ` で指定された行数が、位置 `startIndex` から変更された際に発せられます。setRow() またはsetRows() を呼び出さずに配列の行数を変更した場合、グラフを更新するためにこのシグナルを発する必要があります。

[signal] void QBarDataProxy::rowsInserted(int startIndex, int count)

このシグナルは、count で指定された行数がstartIndex の位置に挿入されたときに発生します。

insertRow() またはinsertRows() を呼び出さずに配列に行が挿入された場合、グラフを更新するためにこのシグナルを発行する必要があります。

[signal] void QBarDataProxy::rowsRemoved(int startIndex, int count)

このシグナルは、startIndex の位置から、count で指定された行数が削除されたときに発生します。

配列の末尾から行が削除された場合、インデックスは現在の配列サイズとなります。removeRows() を呼び出さずに配列から行を削除した場合は、グラフを更新するためにこのシグナルを発生させる必要があります。

void QBarDataProxy::setItem(const QPoint &position, const QBarDataItem &item)

位置position にある1つの項目を、項目item に変更します。position のx値は行を、y値は列を示します。

void QBarDataProxy::setItem(int rowIndex, int columnIndex, const QBarDataItem &item)

rowIndex およびcolumnIndex で指定された位置にある 1 つの項目を、item の項目に変更します。

void QBarDataProxy::setRow(int rowIndex, QBarDataRow *row)

rowIndex の位置にある行を、row で指定された新しい行に置き換えることで、既存の行を変更します。新しい行は、rowIndex にすでに格納されている既存の行と同じでも構いません。既存の行のラベルには影響しません。

void QBarDataProxy::setRow(int rowIndex, QBarDataRow *row, const QString &label)

rowIndex の位置にある行を、row で指定された新しい行に置き換えることで、既存の行を変更します。新しい行は、rowIndex にすでに保存されている既存の行と同じでもかまいません。行のラベルをlabel に変更します。

void QBarDataProxy::setRows(int rowIndex, const QBarDataArray &rows)

rowIndex で指定された位置から始まる行を、rows で指定された新しい行に置き換えることで、既存の行を変更します。既存の行ラベルは変更されません。rows 配列内の行は、rowIndex にすでに格納されている既存の行と同じであってもかまいません。

void QBarDataProxy::setRows(int rowIndex, const QBarDataArray &rows, const QStringList &labels)

rowIndex の位置から始まる行を、rows で指定された新しい行に置き換えることで、既存の行を変更します。行のラベルはlabels に変更されます。rows 配列内の行は、rowIndex にすでに格納されている既存の行と同じでも構いません。

関連する非メンバー

QBarDataArray

QBarDataRow オブジェクトへのポインタのリスト。

QBarDataRow

QBarDataItem オブジェクトのリスト。

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