Sur cette page

QPersistentModelIndex Class

La classe `QPersistentModelIndex` sert à localiser des données dans un modèle de données. En savoir plus...

En-tête : #include <QPersistentModelIndex>
CMake : find_package(Qt6 REQUIRED COMPONENTS Core)
target_link_libraries(mytarget PRIVATE Qt6::Core)
qmake : QT += core

Comparaisons de QPersistentModelIndex

CatégorieTypes comparables
fortQPersistentModelIndex
strongQModelIndex.

Fonctions publiques

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)

Description détaillée

Un QPersistentModelIndex est un index de modèle qui peut être stocké par une application, puis utilisé ultérieurement pour accéder à des informations dans un modèle. Contrairement à la classe ` QModelIndex `, il est sûr de stocker un QPersistentModelIndex, car le modèle garantit que les références aux éléments resteront valides tant qu'elles seront accessibles par le modèle.

Il est recommandé de vérifier la validité des index de modèle persistants avant de les utiliser.

Remarque : vous ne pouvez pas stocker le QPersistentModelIndex d’un QStandardItemModel dans l’un des éléments du modèle.

Voir également Programmation Modèle/Vue, QModelIndex et QAbstractItemModel.

Documentation des fonctions membres

QPersistentModelIndex::QPersistentModelIndex(const QModelIndex &index)

Crée un nouvel objet `QPersistentModelIndex` qui est une copie du modèle index.

QPersistentModelIndex::QPersistentModelIndex(const QPersistentModelIndex &other)

Crée un nouvel objet `QPersistentModelIndex` qui est une copie de l'index du modèle persistant ` other `.

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

La méthode `move` crée une instance de `QPersistentModelIndex` et la fait pointer vers le même objet que celui vers lequel pointait ` other `.

int QPersistentModelIndex::column() const

Renvoie la colonne à laquelle cet index de modèle persistant fait référence.

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

Renvoie les données de l'role donné pour l'élément référencé par l'index, ou un QVariant construit par défaut si cet index de modèle persistant est de type invalid.

Voir également Qt::ItemDataRole et QAbstractItemModel::setData().

Qt::ItemFlags QPersistentModelIndex::flags() const

Renvoie les indicateurs associés à l'élément désigné par l'index.

bool QPersistentModelIndex::isValid() const

Renvoie « true » si cet index de modèle persistant est valide ; sinon, renvoie « false ».

Un index valide appartient à un modèle et comporte des numéros de ligne et de colonne non négatifs.

Voir également model(), row() et column().

const QAbstractItemModel *QPersistentModelIndex::model() const

Renvoie le modèle auquel appartient l'index.

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

Remplit l’ roleDataSpan s spécifiées pour l’élément référencé par l’index.

Cette fonction a été introduite dans Qt 6.0.

Voir également ` Qt::ItemDataRole ` et ` QAbstractItemModel::setData()`.

QModelIndex QPersistentModelIndex::parent() const

Renvoie l'QModelIndex parent de cet index persistant, ou une QModelIndex non valide s'il n'a pas de parent.

Voir également sibling() et model().

int QPersistentModelIndex::row() const

Renvoie la ligne à laquelle fait référence cet index de modèle persistant.

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

Renvoie le nœud frère situé à l'adresse row et column, ou une valeur non valide de type QModelIndex s'il n'y a pas de nœud frère à cette position.

Voir également parent().

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

Remplace cet index de modèle persistant par other. Cette opération est très rapide et ne rencontre jamais d'échec.

QPersistentModelIndex::operator QModelIndex() const

Opérateur de conversion qui renvoie une valeur de type ` QModelIndex`.

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

Cette opération attribue l'other à cette instance QPersistentModelIndex.

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

Définit l'index du modèle persistant de manière à ce qu'il fasse référence au même élément du modèle que l'index du modèle « other ».

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

Définit l'index du modèle persistant de manière à ce qu'il fasse référence au même élément du modèle que l'index du modèle persistant « other ».

Éléments non membres associés

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

Renvoie la valeur de hachage de key, en utilisant seed comme graine pour le calcul.

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

Renvoie « true » si l'index du modèle persistant lhs ne correspond pas à l'index du modèle rhs; sinon, renvoie « false ».

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

Renvoie « true » si l'index du modèle persistant « lhs » n'est pas égal à celui du modèle persistant « rhs » ; sinon, renvoie « false ».

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

Renvoie ` true ` si l’index du modèle persistant ` lhs ` est inférieur à l’index du modèle persistant ` rhs ` ; sinon, renvoie ` false`.

Le pointeur de données interne, ainsi que les valeurs de ligne, de colonne et de modèle contenues dans l’index du modèle persistant, sont utilisés lors de la comparaison avec un autre index de modèle persistant.

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

Renvoie « true » si l'index du modèle persistant lhs fait référence au même emplacement que l'index du modèle rhs; sinon, renvoie « false ».

Le pointeur de données interne, la ligne, la colonne et les valeurs du modèle contenues dans l'index du modèle persistant sont utilisés lors de la comparaison avec un autre index de modèle.

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

Renvoie « true » si l'index du modèle persistant « lhs » est égal à l'index du modèle persistant « rhs » ; sinon, renvoie « false ».

Le pointeur de données interne, ainsi que les valeurs de ligne, de colonne et de modèle contenues dans l’index du modèle persistant, sont utilisés lors de la comparaison avec un autre index de modèle persistant.

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