Класс QBarDataProxy
Класс QBarDataProxy является прокси данных для 3D-гистограммы. Подробнее...
| Заголовок: | #include <QBarDataProxy> |
| С момента версии: | QtDataVisualization 1.0 |
| Создаётся: | BarDataProxy |
| Наследует: | QAbstractDataProxy |
| Наследуется: |
Этот класс был добавлен в QtDataVisualization 1.0.
Свойства
- columnLabels : QStringList
- rowCount : const int
- rowLabels : QStringList
- series : QBar3DSeries* const
Открытые функции
| 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(int rowIndex, int columnIndex) const |
| const QBarDataItem * | itemAt(const QPoint &position) 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(int rowIndex, int columnIndex, const QBarDataItem &item) |
| void | setItem(const QPoint &position, 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) |
Связанные внешние члены
| typedef | QBarDataArray |
| typedef | QBarDataRow |
Подробное описание
Прокси данных гистограммы обрабатывает добавление, вставку, изменение и удаление строк данных.
Массив данных представляет собой список векторов (строк) экземпляров QBarDataItem. Каждая строка может содержать разное количество элементов или даже быть нулевой.
QBarDataProxy берёт на себя владение всеми объектами QtDataVisualization::QBarDataRow, переданными ему, как напрямую, так и в контейнере QtDataVisualization::QBarDataArray. Если указатели на строки данных гистограммы используются для прямого изменения данных после добавления массива в прокси, необходимо испустить соответствующий сигнал для обновления графика.
QBarDataProxy необязательно отслеживает метки строк и столбцов, которые QCategory3DAxis может использовать для отображения меток осей. Метки строк и столбцов хранятся в отдельном массиве от данных, и методы манипулирования строками предоставляют альтернативные версии, которые не влияют на метки строк. Это позволяет использовать метки строк, которые относятся к положению данных в массиве, а не к самим данным.
См. также Обработка данных в Qt Data Visualization.
Документация по свойствам
columnLabels : QStringList
Это свойство содержит необязательные метки столбцов для массива.
Индексы в этом массиве соответствуют индексам столбцов в строках. Если список короче, чем самая длинная строка, все столбцы не получат метки.
Функции доступа:
| QStringList | columnLabels() const |
| void | setColumnLabels(const QStringList &labels) |
Сигнал уведомления:
| void | columnLabelsChanged() |
rowCount : const int
Это свойство содержит количество строк в массиве.
Функции доступа:
| int | rowCount() const |
Сигнал уведомления:
| void | rowCountChanged(int count) |
rowLabels : QStringList
Это свойство содержит необязательные метки строк для массива.
Индексы в этом массиве соответствуют индексам строк в массиве данных. Если список короче, чем количество строк, все строки не получат метки.
Функции доступа:
| QStringList | rowLabels() const |
| void | setRowLabels(const QStringList &labels) |
Сигнал уведомления:
| void | rowLabelsChanged() |
series : QBar3DSeries* const
Это свойство содержит серию, к которой привязан этот прокси.
Функции доступа:
| QBar3DSeries * | series() const |
Сигнал уведомления:
| void | seriesChanged(QBar3DSeries *series) |
Документация по членам-функциям
QBarDataProxy::QBarDataProxy(QObject *parent = nullptr)
Создает прокси данных столбчатой диаграммы с указанным parent.
[signal] void QBarDataProxy::arrayReset()
Этот сигнал излучается, когда массив данных сброшен. Если содержимое всего массива изменено без вызова resetArray(), этот сигнал необходимо излучить для обновления графика.
[signal] void QBarDataProxy::itemChanged(int rowIndex, int columnIndex)
Этот сигнал излучается, когда элемент в позиции, указанной rowIndex и columnIndex, меняется. Если элемент изменён в массиве без вызова setItem(), этот сигнал необходимо излучить для обновления графика.
[signal] void QBarDataProxy::rowsAdded(int startIndex, int count)
Этот сигнал излучается, когда количество строк, заданное count, добавлено, начиная с позиции startIndex. Если строки добавлены в массив без вызова 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)
Этот сигнал излучается, когда количество строк, заданное count, удалено, начиная с позиции startIndex.
Индекс — это текущий размер массива, если строки были удалены из конца массива. Если строки удалены из массива без вызова removeRows(), этот сигнал необходимо излучить для обновления графика.
[virtual] QBarDataProxy::~QBarDataProxy()
Удаляет прокси данных столбчатой диаграммы.
int QBarDataProxy::addRow(QBarDataRow *row)
Добавляет новую строку row в конец массива. Существующие метки строк не затрагиваются.
Возвращает индекс добавленной строки.
int QBarDataProxy::addRow(QBarDataRow *row, const QString &label)
Добавляет новую строку row с меткой label в конец массива.
Возвращает индекс добавленной строки.
int QBarDataProxy::addRows(const QBarDataArray &rows)
Добавляет новые rows в конец массива. Существующие метки строк не затрагиваются.
Возвращает индекс первой добавленной строки.
int QBarDataProxy::addRows(const QBarDataArray &rows, const QStringList &labels)
Добавляет новые rows с labels в конец массива.
Возвращает индекс первой добавленной строки.
const QBarDataArray *QBarDataProxy::array() const
Возвращает указатель на массив данных.
void QBarDataProxy::insertRow(int rowIndex, QBarDataRow *row)
Вставляет новую строку row в rowIndex. Если rowIndex равно размеру массива, строки добавляются в конец массива. Существующие метки строк не затрагиваются.
Примечание: Массив меток строк будет не синхронизирован с массивом строк после этого вызова, если были помеченные строки за пределами вставленной строки.
void QBarDataProxy::insertRow(int rowIndex, QBarDataRow *row, const QString &label)
Вставляет новую строку row с меткой label в rowIndex. Если rowIndex равно размеру массива, строки добавляются в конец массива.
void QBarDataProxy::insertRows(int rowIndex, const QBarDataArray &rows)
Вставляет новые rows в rowIndex. Если rowIndex равно размеру массива, строки добавляются в конец массива. Существующие метки строк не затрагиваются.
Примечание: Массив меток строк будет не синхронизирован с массивом строк после этого вызова, если были помеченные строки за пределами вставленных строк.
void QBarDataProxy::insertRows(int rowIndex, const QBarDataArray &rows, const QStringList &labels)
Вставляет новые rows с labels в rowIndex. Если rowIndex равно размеру массива, строки добавляются в конец массива.
const QBarDataItem *QBarDataProxy::itemAt(int rowIndex, int columnIndex) const
Возвращает указатель на элемент в позиции, заданной rowIndex и columnIndex. Гарантируется, что он действителен только до следующего вызова, изменяющего данные.
const QBarDataItem *QBarDataProxy::itemAt(const QPoint &position) const
Возвращает указатель на элемент в позиции position. Значение x в position указывает строку, а значение y — столбец. Элемент гарантированно действителен до следующего вызова, изменяющего данные.
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().
Передача нулевого массива удаляет старый массив и создаёт новый пустой массив. Метки строк и столбцов не затрагиваются.
void QBarDataProxy::resetArray(QBarDataArray *newArray, const QStringList &rowLabels, const QStringList &columnLabels)
Принимает массив newArray в собственность. Очищает существующий массив, если новый массив отличается от него. Если массивы одинаковы, эта функция просто вызывает сигнал arrayReset().
Передача нулевого массива удаляет старый массив и создаёт новый пустой массив.
Список rowLabels и columnLabels задаёт новые метки для строк и столбцов.
const QBarDataRow *QBarDataProxy::rowAt(int rowIndex) const
Возвращает указатель на строку в позиции rowIndex. Она гарантированно действительна до следующего вызова, изменяющего данные.
void QBarDataProxy::setItem(int rowIndex, int columnIndex, const QBarDataItem &item)
Изменяет отдельный элемент в позиции, заданной rowIndex и columnIndex, на элемент item.
void QBarDataProxy::setItem(const QPoint &position, const QBarDataItem &item)
Изменяет отдельный элемент в позиции position на элемент item. Значение x в position указывает строку, а значение y — столбец.
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.
Связанные нечленные функции
typedef QBarDataArray
Список указателей на объекты QBarDataRow.
typedef QBarDataRow
Вектор объектов QBarDataItem.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.14/qbardataproxy.html