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 |
- Liste de tous les membres, y compris les membres hérités
- QPersistentModelIndex fait partie des classes à partage implicite.
Comparaisons de QPersistentModelIndex
| Catégorie | Types comparables |
|---|---|
| fort | QPersistentModelIndex |
| strong | QModelIndex. |
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) |
Éléments non membres associés
| 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.