Auf dieser Seite

QPersistentModelIndex Class

Die Klasse „QPersistentModelIndex“ dient dazu, Daten in einem Datenmodell zu finden. Mehr...

Header: #include <QPersistentModelIndex>
CMake: find_package(Qt6 REQUIRED COMPONENTS Core)
target_link_libraries(mytarget PRIVATE Qt6::Core)
qmake: QT += core

Vergleiche zu QPersistentModelIndex

KategorieVergleichbare Typen
starkQPersistentModelIndex
strongQModelIndex.

Öffentliche Funktionen

QPersistentModelIndex(const QModelIndex &index)
QPersistentModelIndex(const QPersistentModelIndex &other)
QPersistentModelIndex(QPersistentModelIndex &&other)
int column() const
QVariant data(int role = Qt::DisplayRole) const
Qt::ItemFlags flags() const
bool isValid() const
const QAbstractItemModel *model() const
(since 6.0) void multiData(QModelRoleDataSpan roleDataSpan) const
QModelIndex parent() const
int row() const
QModelIndex sibling(int row, int column) const
void swap(QPersistentModelIndex &other)
operator QModelIndex() const
QPersistentModelIndex &operator=(QPersistentModelIndex &&other)
QPersistentModelIndex &operator=(const QModelIndex &other)
QPersistentModelIndex &operator=(const QPersistentModelIndex &other)
size_t qHash(const QPersistentModelIndex &key, size_t seed = 0)
bool operator!=(const QPersistentModelIndex &lhs, const QModelIndex &rhs)
bool operator!=(const QPersistentModelIndex &lhs, const QPersistentModelIndex &rhs)
bool operator<(const QPersistentModelIndex &lhs, const QPersistentModelIndex &rhs)
bool operator==(const QPersistentModelIndex &lhs, const QModelIndex &rhs)
bool operator==(const QPersistentModelIndex &lhs, const QPersistentModelIndex &rhs)

Ausführliche Beschreibung

Ein `QPersistentModelIndex` ist ein Modellindex, der von einer Anwendung gespeichert und später für den Zugriff auf Informationen in einem Modell verwendet werden kann. Im Gegensatz zur Klasse ` QModelIndex ` ist das Speichern eines `QPersistentModelIndex` unbedenklich, da das Modell sicherstellt, dass Verweise auf Elemente so lange gültig bleiben, wie das Modell auf sie zugreifen kann.

Es empfiehlt sich, vor der Verwendung von persistenten Modellindizes deren Gültigkeit zu überprüfen.

Hinweis: Sie können den QPersistentModelIndex eines „ QStandardItemModel “ nicht in einem der Elemente des Modells speichern.

Siehe auch „Model/View-Programmierung“, „ QModelIndex “ und „ QAbstractItemModel “.

Dokumentation zu Mitgliedsfunktionen

QPersistentModelIndex::QPersistentModelIndex(const QModelIndex &index)

Erstellt ein neues `QPersistentModelIndex`, das eine Kopie des Modell index s ist.

QPersistentModelIndex::QPersistentModelIndex(const QPersistentModelIndex &other)

Erstellt ein neues `QPersistentModelIndex`-Objekt, das eine Kopie des persistenten Modellindexes von ` other ` darstellt.

[noexcept] QPersistentModelIndex::QPersistentModelIndex(QPersistentModelIndex &&other)

Erstellt eine Instanz von `QPersistentModelIndex` und sorgt dafür, dass diese auf dasselbe Objekt verweist, auf das zuvor ` other ` verwiesen hat.

int QPersistentModelIndex::column() const

Gibt die Spalte zurück, auf die sich dieser Index des persistenten Modells bezieht.

QVariant QPersistentModelIndex::data(int role = Qt::DisplayRole) const

Gibt die Daten für das angegebene „ role “ für das Element zurück, auf das der Index verweist, oder ein standardmäßig konstruiertes „ QVariant “, falls dieser persistente Modellindex „ invalid “ ist.

Siehe auch „ Qt::ItemDataRole “ und „ QAbstractItemModel::setData()“.

Qt::ItemFlags QPersistentModelIndex::flags() const

Gibt die Flags für das Element zurück, auf das der Index verweist.

bool QPersistentModelIndex::isValid() const

Gibt „ true “ zurück, wenn dieser persistente Modellindex gültig ist; andernfalls wird „ false “ zurückgegeben.

Ein gültiger Index gehört zu einem Modell und weist nicht-negative Zeilen- und Spaltennummern auf.

Siehe auch model(), row() und column().

const QAbstractItemModel *QPersistentModelIndex::model() const

Gibt das Modell zurück, zu dem der Index gehört.

[since 6.0] void QPersistentModelIndex::multiData(QModelRoleDataSpan roleDataSpan) const

Füllt die angegebene „ roleDataSpan “ für das Element, auf das der Index verweist.

Diese Funktion wurde in Qt 6.0 eingeführt.

Siehe auch „ Qt::ItemDataRole “ und „ QAbstractItemModel::setData()“.

QModelIndex QPersistentModelIndex::parent() const

Gibt den übergeordneten „ QModelIndex “ für diesen persistenten Index zurück oder einen ungültigen „ QModelIndex “, falls dieser keinen übergeordneten Index hat.

Siehe auch ` sibling()` und ` model()`.

int QPersistentModelIndex::row() const

Gibt die Zeile zurück, auf die sich dieser Index des persistenten Modells bezieht.

QModelIndex QPersistentModelIndex::sibling(int row, int column) const

Gibt das Geschwisterelement unter row und column zurück oder einen ungültigen Wert QModelIndex, falls an dieser Position kein Geschwisterelement vorhanden ist.

Siehe auch parent().

[noexcept] void QPersistentModelIndex::swap(QPersistentModelIndex &other)

Ersetzt diesen persistenten Modellindex durch other. Dieser Vorgang ist sehr schnell und schlägt niemals fehl.

QPersistentModelIndex::operator QModelIndex() const

Typumwandlungsoperator, der einen ` QModelIndex` zurückgibt.

[noexcept] QPersistentModelIndex &QPersistentModelIndex::operator=(QPersistentModelIndex &&other)

Weist „ other “ dieser „ QPersistentModelIndex “-Instanz zu.

QPersistentModelIndex &QPersistentModelIndex::operator=(const QModelIndex &other)

Legt den persistenten Modellindex so fest, dass er auf dasselbe Element in einem Modell verweist wie der Modellindex „ other “.

QPersistentModelIndex &QPersistentModelIndex::operator=(const QPersistentModelIndex &other)

Legt den persistenten Modellindex so fest, dass er auf dasselbe Element in einem Modell verweist wie der persistente Modellindex „ other “.

Verwandte Nicht-Mitglieder

[noexcept] size_t qHash(const QPersistentModelIndex &key, size_t seed = 0)

Gibt den Hash-Wert für key zurück, wobei seed als Startwert für die Berechnung verwendet wird.

[noexcept] bool operator!=(const QPersistentModelIndex &lhs, const QModelIndex &rhs)

Gibt „ true “ zurück, wenn der Index des persistenten Modells „ lhs “ nicht auf denselben Speicherort verweist wie der Index des Modells „ rhs “; andernfalls wird „ false “ zurückgegeben.

[noexcept] bool operator!=(const QPersistentModelIndex &lhs, const QPersistentModelIndex &rhs)

Gibt „ true “ zurück, wenn der Index des persistenten Modells „ lhs “ nicht mit dem Index des persistenten Modells „ rhs “ übereinstimmt; andernfalls wird „ false “ zurückgegeben.

[noexcept] bool operator<(const QPersistentModelIndex &lhs, const QPersistentModelIndex &rhs)

Gibt „ true “ zurück, wenn der persistente Modellindex von „ lhs “ kleiner ist als der persistente Modellindex von „ rhs “; andernfalls wird „ false “ zurückgegeben.

Beim Vergleich mit einem anderen persistenten Modellindex werden der interne Datenzeiger sowie die Werte für Zeile, Spalte und Modell im persistenten Modellindex herangezogen.

[noexcept] bool operator==(const QPersistentModelIndex &lhs, const QModelIndex &rhs)

Gibt „ true “ zurück, wenn der persistente Modellindex „ lhs “ auf denselben Speicherort verweist wie der Modellindex „ rhs “; andernfalls wird „ false “ zurückgegeben.

Beim Vergleich mit einem anderen Modellindex werden der interne Datenzeiger sowie die Zeilen-, Spalten- und Modellwerte des persistenten Modellindexes herangezogen.

[noexcept] bool operator==(const QPersistentModelIndex &lhs, const QPersistentModelIndex &rhs)

Gibt „ true “ zurück, wenn der persistente Modellindex „ lhs “ mit dem persistenten Modellindex „ rhs “ übereinstimmt; andernfalls wird „ false “ zurückgegeben.

Beim Vergleich mit einem anderen persistenten Modellindex werden der interne Datenzeiger sowie die Zeilen-, Spalten- und Modellwerte des persistenten Modellindexes herangezogen.

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