Spec-Zone.ru › Qt 6.1

Класс QStringListModel

Класс QStringListModel предоставляет модель, которая предоставляет строки для представлений. Подробнее...

Заголовок: #include <QStringListModel>
CMake: find_package(Qt6 COMPONENTS Core REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Core)
qmake: QT += core
Наследуется от: QAbstractListModel
Наследует:

QHelpIndexModel

  • Список всех членов, включая унаследованные члены

Открытые функции

QStringListModel(const QStringList &strings, QObject *parent = nullptr)
QStringListModel(QObject *parent = nullptr)
void setStringList(const QStringList &strings)
QStringList stringList() const

Переопределённые открытые функции

virtual bool clearItemData(const QModelIndex &index) override
virtual QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const override
virtual Qt::ItemFlags flags(const QModelIndex &index) const override
virtual bool insertRows(int row, int count, const QModelIndex &parent = QModelIndex()) override
virtual QMap<int, QVariant> itemData(const QModelIndex &index) const override
virtual bool moveRows(const QModelIndex &sourceParent, int sourceRow, int count, const QModelIndex &destinationParent, int destinationChild) override
virtual bool removeRows(int row, int count, const QModelIndex &parent = QModelIndex()) override
virtual int rowCount(const QModelIndex &parent = QModelIndex()) const override
virtual bool setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole) override
virtual bool setItemData(const QModelIndex &index, const QMap<int, QVariant> &roles) override
virtual QModelIndex sibling(int row, int column, const QModelIndex &idx) const override
virtual void sort(int column, Qt::SortOrder order = Qt::AscendingOrder) override
virtual Qt::DropActions supportedDropActions() const override

Подробное описание

QStringListModel — это редактируемая модель, которую можно использовать в простых случаях, когда необходимо отобразить несколько строк в виджете представления, например, в QListView или QComboBox.

Модель предоставляет все стандартные функции редактируемой модели, представляя данные в списке строк как модель с одним столбцом и количеством строк, равным количеству элементов в списке.

Индексы модели, соответствующие элементам, получаются с помощью функции index(), а флаги элементов — с помощью flags(). Данные элементов считываются с помощью функции data() и записываются с помощью setData(). Количество строк (и количество элементов в списке строк) можно найти с помощью функции rowCount().

Модель можно создать с существующим списком строк или установить строки позже с помощью вспомогательной функции setStringList(). Строки также можно вставлять обычным способом с помощью функции insertRows() и удалять с помощью removeRows(). Содержимое списка строк можно получить с помощью вспомогательной функции stringList().

Пример использования QStringListModel:

    QStringListModel *model = new QStringListModel();
    QStringList list;
    list << "a" << "b" << "c";
    model->setStringList(list);

См. также QAbstractListModel, QAbstractItemModel и Классы моделей.

Документация по функциям-членам

QStringListModel::QStringListModel(const QStringList &strings, QObject *parent = nullptr)

Создаёт модель списка строк, содержащую указанные strings с заданным parent.

QStringListModel::QStringListModel(QObject *parent = nullptr)

Создаёт модель списка строк с заданным parent.

[override virtual, since 6.0] bool QStringListModel::clearItemData(const QModelIndex &index)

Переопределяет: QAbstractItemModel::clearItemData(const QModelIndex &index).

Эта функция была добавлена в Qt 6.0.

[override virtual] QVariant QStringListModel::data(const QModelIndex &index, int role = Qt::DisplayRole) const

Переопределяет: QAbstractItemModel::data(const QModelIndex &index, int role) const.

Возвращает данные для указанного role из элемента с заданным index.

Если представление запрашивает недопустимый индекс, возвращается недопустимый вариант.

См. также setData().

[override virtual] Qt::ItemFlags QStringListModel::flags(const QModelIndex &index) const

Переопределяет: QAbstractListModel::flags(const QModelIndex &index) const.

Возвращает флаги для элемента с заданным index.

Действительные элементы включены, выбираемы, редактируемы, разрешено перетаскивание и разрешено перемещение.

См. также QAbstractItemModel::flags().

[override virtual] bool QStringListModel::insertRows(int row, int count, const QModelIndex &parent = QModelIndex())

Переопределяет: QAbstractItemModel::insertRows(int row, int count, const QModelIndex &parent).

Вставляет count строк в модель, начиная с заданной row.

Индекс parent строк необязателен и используется только для согласованности с QAbstractItemModel. По умолчанию задан нулевой индекс, указывающий, что строки вставляются в верхнем уровне модели.

Возвращает true если вставка выполнена успешно.

См. также QAbstractItemModel::insertRows().

[override virtual, since 5.13] QMap<int, QVariant> QStringListModel::itemData(const QModelIndex &index) const

Переопределяет: QAbstractItemModel::itemData(const QModelIndex &index) const.

Эта функция была добавлена в Qt 5.13.

См. также setItemData().

[override virtual, since 5.13] bool QStringListModel::moveRows(const QModelIndex &sourceParent, int sourceRow, int count, const QModelIndex &destinationParent, int destinationChild)

Переопределяет: QAbstractItemModel::moveRows(const QModelIndex &sourceParent, int sourceRow, int count, const QModelIndex &destinationParent, int destinationChild).

Эта функция была введена в Qt 5.13.

[override virtual] bool QStringListModel::removeRows(int row, int count, const QModelIndex &parent = QModelIndex())

Переопределяет: QAbstractItemModel::removeRows(int row, int count, const QModelIndex &parent).

Удаляет count строк из модели, начиная с заданной строки row.

Индекс parent строк является необязательным и используется только для согласованности с QAbstractItemModel. По умолчанию используется пустой индекс, что указывает на удаление строк на верхнем уровне модели.

Возвращает true если удаление строк прошло успешно.

См. также QAbstractItemModel::removeRows().

[override virtual] int QStringListModel::rowCount(const QModelIndex &parent = QModelIndex()) const

Переопределяет: QAbstractItemModel::rowCount(const QModelIndex &parent) const.

Возвращает количество строк в модели. Это значение соответствует количеству элементов во внутреннем списке строк модели.

Необязательный аргумент parent в большинстве моделей используется для указания родителя строк, которые нужно посчитать. Поскольку это список, если указан допустимый родитель, результат всегда будет 0.

См. также insertRows(), removeRows() и QAbstractItemModel::rowCount().

[override virtual] bool QStringListModel::setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole)

Переопределяет: QAbstractItemModel::setData(const QModelIndex &index, const QVariant &value, int role).

Устанавливает данные для указанного role в элементе с заданным index в модели, на предоставленное value.

Сигнал dataChanged() генерируется, если элемент изменён. Возвращает true после генерации сигнала dataChanged().

См. также Qt::ItemDataRole и data().

[override virtual, since 5.13] bool QStringListModel::setItemData(const QModelIndex &index, const QMap<int, QVariant> &roles)

Переопределяет: QAbstractItemModel::setItemData(const QModelIndex &index, const QMap<int, QVariant> &roles).

Если roles содержит как Qt::DisplayRole, так и Qt::EditRole, приоритет отдаётся второму.

Эта функция была введена в Qt 5.13.

См. также itemData().

void QStringListModel::setStringList(const QStringList &strings)

Устанавливает внутренний список строк модели на strings. Модель уведомит все подключенные представления об изменении её базовых данных.

См. также stringList() и dataChanged().

[override virtual] QModelIndex QStringListModel::sibling(int row, int column, const QModelIndex &idx) const

Переопределяет: QAbstractListModel::sibling(int row, int column, const QModelIndex &idx) const.

[override virtual] void QStringListModel::sort(int column, Qt::SortOrder order = Qt::AscendingOrder)

Переопределяет: QAbstractItemModel::sort(int column, Qt::SortOrder order).

QStringList QStringListModel::stringList() const

Возвращает список строк, используемый моделью для хранения данных.

См. также setStringList().

[override virtual] Qt::DropActions QStringListModel::supportedDropActions() const

Переопределяет: QAbstractItemModel::supportedDropActions() const.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.1/qstringlistmodel.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API