QStringListModel Class

Die Klasse QStringListModel stellt ein Modell zur Verfügung, das Strings an Views liefert. Mehr...

Kopfzeile: #include <QStringListModel>
CMake: find_package(Qt6 REQUIRED COMPONENTS Core)
target_link_libraries(mytarget PRIVATE Qt6::Core)
qmake: QT += core
Vererbt: QAbstractListModel
Vererbt von:

QHelpIndexModel

Öffentliche Funktionen

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

Reimplementierte öffentliche Funktionen

(since 6.0) 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

Detaillierte Beschreibung

QStringListModel ist ein editierbares Modell, das für einfache Fälle verwendet werden kann, in denen Sie eine Anzahl von Strings in einem View-Widget anzeigen müssen, wie z.B. QListView oder QComboBox.

Das Modell bietet alle Standardfunktionen eines bearbeitbaren Modells und stellt die Daten in der Stringliste als Modell mit einer Spalte und einer Anzahl von Zeilen dar, die der Anzahl der Elemente in der Liste entspricht.

Modellindizes, die Elementen entsprechen, werden mit der Funktion index() ermittelt, und Elementflags werden mit flags() ermittelt. Die Artikeldaten werden mit der Funktion data() gelesen und mit setData() geschrieben. Die Anzahl der Zeilen (und die Anzahl der Elemente in der Stringliste) kann mit der Funktion rowCount() ermittelt werden.

Das Modell kann mit einer vorhandenen Zeichenkettenliste erstellt werden, oder die Zeichenketten können später mit der Funktion setStringList() festgelegt werden. Zeichenketten können auch auf die übliche Weise mit der Funktion insertRows() eingefügt und mit removeRows() entfernt werden. Der Inhalt der Stringliste kann mit der Convenience-Funktion stringList() abgefragt werden.

Ein Beispiel für die Verwendung von QStringListModel:

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

Siehe auch QAbstractListModel, QAbstractItemModel, und Model Classes.

Dokumentation der Mitgliedsfunktionen

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

Konstruiert ein String-Listenmodell mit der angegebenen parent.

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

Konstruiert ein String-Listenmodell, das die angegebene strings mit dem angegebenen parent enthält.

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

Reimplements: QAbstractItemModel::clearItemData(const QModelIndex &index).

Diese Funktion wurde in Qt 6.0 eingeführt.

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

Reimplements: QAbstractItemModel::data(const QModelIndex &index, int role) const.

Liefert Daten für das angegebene role, aus dem Element mit dem angegebenen index.

Wenn die Ansicht einen ungültigen Index anfordert, wird eine ungültige Variante zurückgegeben.

Siehe auch setData().

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

Reimplements: QAbstractListModel::flags(const QModelIndex &index) const.

Gibt die Flags für das Element mit dem angegebenen index zurück.

Gültige Elemente sind enabled, selectable, editable, drag enabled und drop enabled.

Siehe auch QAbstractItemModel::flags().

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

Reimplements: QAbstractItemModel::insertRows(int row, int count, const QModelIndex &parent).

Fügt count Zeilen in das Modell ein, beginnend mit dem angegebenen row.

Der parent Index der Zeilen ist optional und wird nur aus Konsistenzgründen mit QAbstractItemModel verwendet. Standardmäßig wird ein Null-Index angegeben, der angibt, dass die Zeilen in der obersten Ebene des Modells eingefügt werden.

Gibt true zurück, wenn das Einfügen erfolgreich war.

Siehe auch QAbstractItemModel::insertRows().

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

Reimplements: QAbstractItemModel::itemData(const QModelIndex &index) const.

Siehe auch setItemData().

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

Reimplements: QAbstractItemModel::moveRows(const QModelIndex &sourceParent, int sourceRow, int count, const QModelIndex &destinationParent, int destinationChild).

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

Reimplements: QAbstractItemModel::removeRows(int row, int count, const QModelIndex &parent).

Entfernt count Zeilen aus dem Modell, beginnend mit dem angegebenen row.

Der parent Index der Zeilen ist optional und wird nur aus Konsistenzgründen mit QAbstractItemModel verwendet. Standardmäßig wird ein Null-Index angegeben, der angibt, dass die Zeilen auf der obersten Ebene des Modells entfernt werden.

Gibt true zurück, wenn das Entfernen der Zeilen erfolgreich war.

Siehe auch QAbstractItemModel::removeRows().

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

Reimplements: QAbstractItemModel::rowCount(const QModelIndex &parent) const.

Gibt die Anzahl der Zeilen des Modells zurück. Dieser Wert entspricht der Anzahl der Elemente in der internen String-Liste des Modells.

Das optionale Argument parent wird in den meisten Modellen verwendet, um das Elternteil der zu zählenden Zeilen anzugeben. Da es sich um eine Liste handelt, wird das Ergebnis immer 0 sein, wenn ein gültiges Elternteil angegeben wird.

Siehe auch insertRows(), removeRows(), und QAbstractItemModel::rowCount().

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

Reimplements: QAbstractItemModel::setData(const QModelIndex &index, const QVariant &value, int role).

Setzt die Daten für das angegebene role in dem Element mit dem angegebenen index im Modell auf das angegebene value.

Das Signal dataChanged() wird ausgegeben, wenn das Element geändert wird. Gibt true zurück, nachdem das Signal dataChanged() ausgegeben wurde.

Siehe auch Qt::ItemDataRole und data().

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

Reimplements: QAbstractItemModel::setItemData(const QModelIndex &index, const QMap<int, QVariant> &roles).

Wenn roles sowohl Qt::DisplayRole als auch Qt::EditRole enthält, hat die letztere Vorrang.

Siehe auch itemData().

void QStringListModel::setStringList(const QStringList &strings)

Setzt die interne String-Liste des Modells auf strings. Das Modell wird alle angehängten Ansichten darüber informieren, dass sich die zugrunde liegenden Daten geändert haben.

Siehe auch stringList() und dataChanged().

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

Reimplements: QAbstractListModel::sibling(int row, int column, const QModelIndex &idx) const.

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

Reimplements: QAbstractItemModel::sort(int column, Qt::SortOrder order).

QStringList QStringListModel::stringList() const

Gibt die Stringliste zurück, die das Modell zum Speichern von Daten verwendet.

Siehe auch setStringList().

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

Reimplements: QAbstractItemModel::supportedDropActions() const.

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