QItemSelection Class
La classe QItemSelection gère les informations relatives aux éléments sélectionnés dans un modèle. Plus d'informations...
| En-tête : | #include <QItemSelection> |
| CMake : | find_package(Qt6 REQUIRED COMPONENTS Core)target_link_libraries(mytarget PRIVATE Qt6::Core) |
| qmake : | QT += core |
| Héritages : | QList |
Fonctions publiques
| QItemSelection() | |
| QItemSelection(const QModelIndex &topLeft, const QModelIndex &bottomRight) | |
| bool | contains(const QModelIndex &index) const |
| QModelIndexList | indexes() const |
| void | merge(const QItemSelection &other, QItemSelectionModel::SelectionFlags command) |
| void | select(const QModelIndex &topLeft, const QModelIndex &bottomRight) |
Membres publics statiques
| void | split(const QItemSelectionRange &range, const QItemSelectionRange &other, QItemSelection *result) |
Description détaillée
Une QItemSelection décrit les éléments d'un modèle qui ont été sélectionnés par l'utilisateur. Une QItemSelection est essentiellement une liste de plages de sélection, voir QItemSelectionRange. Elle fournit des fonctions permettant de créer et de manipuler des sélections, et de sélectionner une plage d'éléments dans un modèle.
La classe QItemSelection est l'une des classes Modèle/Vue et fait partie du cadre Modèle/Vue de Qt.
Une sélection d'éléments peut être construite et initialisée pour contenir une gamme d'éléments d'un modèle existant. L'exemple suivant construit une sélection qui contient un éventail d'éléments provenant du modèle donné model, commençant à topLeft et se terminant à bottomRight.
QItemSelection *selection = new QItemSelection(topLeft, bottomRight);
Il est possible de construire une sélection d'éléments vide et de la remplir ultérieurement selon les besoins. Ainsi, si le modèle n'est pas disponible lorsque nous construisons la sélection d'éléments, nous pouvons réécrire le code ci-dessus de la manière suivante :
QItemSelection *selection = new QItemSelection(); //... selection->select(topLeft, bottomRight);
QItemSelection économise de la mémoire et évite le travail inutile en travaillant avec des plages de sélection plutôt qu'en enregistrant l'index de l'élément du modèle pour chaque élément de la sélection. En général, une instance de cette classe contient une liste de plages de sélection qui ne se chevauchent pas.
Utilisez merge() pour fusionner une sélection d'articles dans une autre sans que les plages de sélection ne se chevauchent. Utilisez split() pour diviser une plage de sélection en plages plus petites basées sur une autre plage de sélection.
Voir également Programmation modèle/vue et QItemSelectionModel.
Documentation sur les fonctions membres
[default] QItemSelection::QItemSelection()
Construit une sélection vide.
QItemSelection::QItemSelection(const QModelIndex &topLeft, const QModelIndex &bottomRight)
Construit une sélection d'éléments qui s'étend de l'élément du modèle situé en haut à gauche, spécifié par l'index topLeft, à l'élément situé en bas à droite, spécifié par bottomRight.
bool QItemSelection::contains(const QModelIndex &index) const
Renvoie true si la sélection contient l'élément donné index; sinon, renvoie false.
QModelIndexList QItemSelection::indexes() const
Renvoie une liste d'index de modèles correspondant aux éléments sélectionnés.
void QItemSelection::merge(const QItemSelection &other, QItemSelectionModel::SelectionFlags command)
Fusionne la sélection other avec cette QItemSelection en utilisant la command donnée. Cette méthode garantit qu'aucune plage ne se chevauche.
Notez que seuls QItemSelectionModel::Select, QItemSelectionModel::Deselect et QItemSelectionModel::Toggle sont pris en charge.
Voir aussi split().
void QItemSelection::select(const QModelIndex &topLeft, const QModelIndex &bottomRight)
Ajoute à la liste les éléments de la plage qui s'étend de l'élément de modèle supérieur gauche, spécifié par l'indice topLeft, à l'élément inférieur droit, spécifié par bottomRight.
Remarque : topLeft et bottomRight doivent avoir le même parent.
[static] void QItemSelection::split(const QItemSelectionRange &range, const QItemSelectionRange &other, QItemSelection *result)
Divise la sélection range en utilisant la plage de la sélection other. Supprime tous les éléments de other de range et place le résultat dans result. Ceci peut être comparé à la sémantique de l'opération de soustraction d'un ensemble.
Voir également merge().
© 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.