Sur cette page

QStandardItemModel Class

La classe QStandardItemModel fournit un modèle générique permettant de stocker des données personnalisées. En savoir plus...

En-tête : #include <QStandardItemModel>
CMake : find_package(Qt6 REQUIRED COMPONENTS Gui)
target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmake : QT += gui
Hérite de : QAbstractItemModel

Propriétés

Fonctions publiques

QStandardItemModel(QObject *parent = nullptr)
QStandardItemModel(int rows, int columns, QObject *parent = nullptr)
virtual ~QStandardItemModel()
void appendColumn(const QList<QStandardItem *> &items)
void appendRow(const QList<QStandardItem *> &items)
void appendRow(QStandardItem *item)
QBindable<int> bindableSortRole()
void clear()
QList<QStandardItem *> findItems(const QString &text, Qt::MatchFlags flags = Qt::MatchExactly, int column = 0) const
QStandardItem *horizontalHeaderItem(int column) const
QModelIndex indexFromItem(const QStandardItem *item) const
void insertColumn(int column, const QList<QStandardItem *> &items)
bool insertColumn(int column, const QModelIndex &parent = QModelIndex())
void insertRow(int row, const QList<QStandardItem *> &items)
bool insertRow(int row, const QModelIndex &parent = QModelIndex())
void insertRow(int row, QStandardItem *item)
QStandardItem *invisibleRootItem() const
QStandardItem *item(int row, int column = 0) const
QStandardItem *itemFromIndex(const QModelIndex &index) const
const QStandardItem *itemPrototype() const
void setColumnCount(int columns)
void setHorizontalHeaderItem(int column, QStandardItem *item)
void setHorizontalHeaderLabels(const QStringList &labels)
void setItem(int row, int column, QStandardItem *item)
void setItem(int row, QStandardItem *item)
void setItemPrototype(const QStandardItem *item)
void setItemRoleNames(const QHash<int, QByteArray> &roleNames)
void setRowCount(int rows)
void setSortRole(int role)
void setVerticalHeaderItem(int row, QStandardItem *item)
void setVerticalHeaderLabels(const QStringList &labels)
int sortRole() const
QList<QStandardItem *> takeColumn(int column)
QStandardItem *takeHorizontalHeaderItem(int column)
QStandardItem *takeItem(int row, int column = 0)
QList<QStandardItem *> takeRow(int row)
QStandardItem *takeVerticalHeaderItem(int row)
QStandardItem *verticalHeaderItem(int row) const

Fonctions publiques réimplémentées

virtual bool clearItemData(const QModelIndex &index) override
virtual int columnCount(const QModelIndex &parent = QModelIndex()) const override
virtual QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const override
virtual bool dropMimeData(const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent) override
virtual Qt::ItemFlags flags(const QModelIndex &index) const override
virtual bool hasChildren(const QModelIndex &parent = QModelIndex()) const override
virtual QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const override
virtual QModelIndex index(int row, int column, const QModelIndex &parent = QModelIndex()) const override
virtual bool insertColumns(int column, int count, const QModelIndex &parent = QModelIndex()) override
virtual bool insertRows(int row, int count, const QModelIndex &parent = QModelIndex()) override
virtual QMap<int, QVariant> itemData(const QModelIndex &index) const override
virtual QMimeData *mimeData(const QModelIndexList &indexes) const override
virtual QStringList mimeTypes() const override
virtual void multiData(const QModelIndex &index, QModelRoleDataSpan roleDataSpan) const override
virtual QModelIndex parent(const QModelIndex &child) const override
virtual bool removeColumns(int column, int count, const QModelIndex &parent = QModelIndex()) override
virtual bool removeRows(int row, int count, const QModelIndex &parent = QModelIndex()) override
virtual QHash<int, QByteArray> roleNames() const 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 setHeaderData(int section, Qt::Orientation orientation, const QVariant &value, int role = Qt::EditRole) override
virtual bool setItemData(const QModelIndex &index, const QMap<int, QVariant> &roles) override
virtual void sort(int column, Qt::SortOrder order = Qt::AscendingOrder) override
virtual Qt::DropActions supportedDropActions() const override

Signaux

void itemChanged(QStandardItem *item)

Description détaillée

QStandardItemModel peut être utilisé comme référentiel pour les types de données standard de Qt. Il s'agit d'une des classes Modèle/Vue et fait partie du framework Modèle/Vue de Qt.

QStandardItemModel propose une approche classique, basée sur des éléments, pour travailler avec le modèle. Les éléments d'un QStandardItemModel sont fournis par l'interface QStandardItem.

QStandardItemModel implémente l'interface QAbstractItemModel, ce qui signifie que le modèle peut être utilisé pour fournir des données à toute vue prenant en charge cette interface (telles que QListView, QTableView et QTreeView, ainsi que vos propres vues personnalisées). Pour des raisons de performances et de flexibilité, vous pouvez créer une sous-classe de ` QAbstractItemModel ` afin de prendre en charge différents types de référentiels de données. Par exemple, ` QFileSystemModel ` fournit une interface de modèle vers le système de fichiers sous-jacent.

Lorsque vous souhaitez créer une liste ou une arborescence, vous créez généralement un QStandardItemModel vide et utilisez appendRow() pour ajouter des éléments au modèle, ainsi que item() pour accéder à un élément. Si votre modèle représente un tableau, vous transmettez généralement les dimensions du tableau au constructeur de QStandardItemModel et utilisez setItem() pour positionner les éléments dans le tableau. Vous pouvez également utiliser setRowCount() et setColumnCount() pour modifier les dimensions du modèle. Pour insérer des éléments, utilisez insertRow() ou insertColumn(), et pour supprimer des éléments, utilisez removeRow() ou removeColumn().

Vous pouvez définir les libellés d'en-tête de votre modèle à l'aide de setHorizontalHeaderLabels() et setVerticalHeaderLabels().

Vous pouvez rechercher des éléments dans le modèle à l'aide de findItems() et trier le modèle en appelant sort().

Appelez ` clear()` pour supprimer tous les éléments du modèle.

Exemple d'utilisation de QStandardItemModel pour créer un tableau :

QStandardItemModel model(4, 4);
for (int row = 0; row < model.rowCount(); ++row) {
    for (int column = 0; column < model.columnCount(); ++column) {
        QStandardItem *item = new QStandardItem(QString("row %0, column %1").arg(row).arg(column));
        model.setItem(row, column, item);
    }
}

Exemple d'utilisation de QStandardItemModel pour créer une arborescence :

QStandardItemModel model;
QStandardItem *parentItem = model.invisibleRootItem();
for (int i = 0; i < 4; ++i) {
    QStandardItem *item = new QStandardItem(QString("item %0").arg(i));
    parentItem->appendRow(item);
    parentItem = item;
}

Après avoir défini le modèle sur une vue, vous souhaitez généralement réagir aux actions de l’utilisateur, telles que le clic sur un élément. Étant donné qu’un ` QAbstractItemView ` fournit des signaux et des fonctions basés sur ` QModelIndex`, vous avez besoin d’un moyen d’obtenir l’ QStandardItem qui correspond à un ` QModelIndex` donné, et inversement. Les fonctions ` itemFromIndex()` et ` indexFromItem()` assurent ce mappage. Une utilisation courante de ` itemFromIndex()` consiste à récupérer l’élément situé à l’index actuel dans une vue, ainsi qu’à récupérer l’élément correspondant à un index véhiculé par un signal de type ` QAbstractItemView `, tel que ` QAbstractItemView::clicked()`. Commencez par connecter le signal de la vue à un slot de votre classe :

QTreeView *treeView = new QTreeView(this);
treeView->setModel(myStandardItemModel);
connect(treeView, &QTreeView::clicked,
        this, &MyWidget::clicked);

Lorsque vous recevez le signal, vous appelez ` itemFromIndex()` sur l’index du modèle donné pour obtenir un pointeur vers l’élément :

void MyWidget::clicked(const QModelIndex &index)
{
    QStandardItem *item = myStandardItemModel->itemFromIndex(index);
    // Do stuff with the item ...
}

À l’inverse, vous devez obtenir le QModelIndex d’un élément lorsque vous souhaitez invoquer une fonction modèle/vue qui prend un index en argument. Vous pouvez obtenir cet index soit en utilisant la fonction indexFromItem() du modèle, soit, de manière équivalente, en appelant QStandardItem::index() :

treeView->scrollTo(item->index());

Vous n’êtes bien sûr pas obligé d’utiliser l’approche basée sur les éléments ; vous pouvez au contraire vous appuyer entièrement sur l’interface QAbstractItemModel lorsque vous travaillez avec le modèle, ou utiliser une combinaison des deux selon les besoins.

Voir également QStandardItem, Programmation modèle/vue, QAbstractItemModel, QRangeModel, Exemple de modèle d’arborescence simple et Classes utilitaires pour la vue des éléments.

Documentation sur les propriétés

[bindable] sortRole : int

Remarque : cette propriété prend en charge les liaisons de type « QProperty ».

Cette propriété contient le rôle d'élément utilisé pour interroger les données du modèle lors du tri des éléments

La valeur par défaut est Qt::DisplayRole.

Fonctions d'accès :

int sortRole() const
void setSortRole(int role)

Voir également sort() et QStandardItem::sortChildren().

Documentation des fonctions membres

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

Crée un nouveau modèle d'élément à partir de l'parent on fournie.

QStandardItemModel::QStandardItemModel(int rows, int columns, QObject *parent = nullptr)

Crée un nouveau modèle d'élément comportant initialement rows lignes et columns colonnes, et dont la valeur parent est définie.

[virtual noexcept] QStandardItemModel::~QStandardItemModel()

Détruit le modèle. Le modèle détruit tous ses objets.

void QStandardItemModel::appendColumn(const QList<QStandardItem *> &items)

Ajoute une colonne contenant items. Si nécessaire, le nombre de lignes est augmenté pour atteindre la taille de items.

Voir également insertColumn() et appendRow().

void QStandardItemModel::appendRow(const QList<QStandardItem *> &items)

Ajoute une ligne contenant items. Si nécessaire, le nombre de colonnes est augmenté pour atteindre la taille de items.

Voir également insertRow() et appendColumn().

void QStandardItemModel::appendRow(QStandardItem *item)

Lors de la création d'une liste ou d'une arborescence ne comportant qu'une seule colonne, cette fonction offre un moyen pratique d'ajouter un nouvel élément à la fin de la liste ou de l'arboresc item.

Il s'agit d'une fonction surchargée.

void QStandardItemModel::clear()

Supprime tous les éléments (y compris les éléments d'en-tête) du modèle et définit le nombre de lignes et de colonnes à zéro.

Voir également removeColumns() et removeRows().

[override virtual] bool QStandardItemModel::clearItemData(const QModelIndex &index)

Réimplémente : QAbstractItemModel::clearItemData(const QModelIndex &index).

[override virtual] int QStandardItemModel::columnCount(const QModelIndex &parent = QModelIndex()) const

Réimplémente : QAbstractItemModel::columnCount(const QModelIndex &parent) const.

Voir aussi setColumnCount().

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

Réimplémentation de : QAbstractItemModel::data(const QModelIndex &index, int role) const.

Voir aussi ` setData()`.

[override virtual] bool QStandardItemModel::dropMimeData(const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent)

Réimplémente : QAbstractItemModel::dropMimeData(const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent).

QList<QStandardItem *> QStandardItemModel::findItems(const QString &text, Qt::MatchFlags flags = Qt::MatchExactly, int column = 0) const

Renvoie une liste d'éléments correspondant à l'text, en utilisant l'flags, dans le column.

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

Réimplémente : ` QAbstractItemModel::flags(const QModelIndex &index) const`.

[override virtual] bool QStandardItemModel::hasChildren(const QModelIndex &parent = QModelIndex()) const

Réimplémente : QAbstractItemModel::hasChildren(const QModelIndex &parent) const.

[override virtual] QVariant QStandardItemModel::headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const

Réimplémente : QAbstractItemModel::headerData(int section, Qt::Orientation orientation, int role) const.

Voir aussi setHeaderData().

QStandardItem *QStandardItemModel::horizontalHeaderItem(int column) const

Renvoie l'élément d'en-tête horizontal correspondant à column s'il a été défini ; sinon, renvoie nullptr.

Voir également setHorizontalHeaderItem() et verticalHeaderItem().

[override virtual] QModelIndex QStandardItemModel::index(int row, int column, const QModelIndex &parent = QModelIndex()) const

Réimplémente : QAbstractItemModel::index(int row, int column, const QModelIndex &parent) const.

QModelIndex QStandardItemModel::indexFromItem(const QStandardItem *item) const

Renvoie l'QModelIndex associé à l'item donné.

Utilisez cette fonction lorsque vous souhaitez effectuer une opération nécessitant l’ QModelIndex de l’élément, telle que QAbstractItemView::scrollTo(). La fonction QStandardItem::index() est fournie à titre de commodité ; elle équivaut à l’appel de cette fonction.

Voir également ` itemFromIndex()` et ` QStandardItem::index()`.

void QStandardItemModel::insertColumn(int column, const QList<QStandardItem *> &items)

Insère une colonne à l'adresse column contenant items. Si nécessaire, le nombre de lignes est augmenté pour atteindre la taille indiquée à l'adresse items.

Voir également takeColumn(), appendColumn() et insertRow().

bool QStandardItemModel::insertColumn(int column, const QModelIndex &parent = QModelIndex())

Insère une seule colonne avant l'column donné dans les éléments enfants de l'parent spécifié. Renvoie true si la colonne est insérée ; sinon, renvoie false.

Voir également insertColumns(), insertRow() et removeColumn().

[override virtual] bool QStandardItemModel::insertColumns(int column, int count, const QModelIndex &parent = QModelIndex())

Réimplémente : QAbstractItemModel::insertColumns(int column, int count, const QModelIndex &parent).

void QStandardItemModel::insertRow(int row, const QList<QStandardItem *> &items)

Insère une ligne à l'adresse row contenant items. Si nécessaire, le nombre de colonnes est augmenté pour atteindre la taille indiquée à l'adresse items.

Voir également takeRow(), appendRow() et insertColumn().

bool QStandardItemModel::insertRow(int row, const QModelIndex &parent = QModelIndex())

Insère une seule ligne avant l'row donné dans les éléments enfants de l'parent spécifié. Renvoie true si la ligne est insérée ; sinon, renvoie false.

Voir également insertRows(), insertColumn() et removeRow().

void QStandardItemModel::insertRow(int row, QStandardItem *item)

Insère une ligne à l'adresse row contenant item.

Lors de la création d’une liste ou d’une arborescence ne comportant qu’une seule colonne, cette fonction offre un moyen pratique d’ajouter un nouvel élément.

Il s'agit d'une fonction surchargée.

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

Réimplémente : QAbstractItemModel::insertRows(int row, int count, const QModelIndex &parent).

QStandardItem *QStandardItemModel::invisibleRootItem() const

Renvoie l'élément racine invisible du modèle.

L'élément racine invisible permet d'accéder aux éléments de niveau supérieur du modèle via l'API QStandardItem, ce qui permet d'écrire des fonctions capables de traiter les éléments de niveau supérieur et leurs enfants de manière uniforme ; par exemple, des fonctions récursives impliquant un modèle arborescent.

Remarque : l'appel de la méthode index() sur l'objet QStandardItem obtenu via cette fonction n'est pas valide.

QStandardItem *QStandardItemModel::item(int row, int column = 0) const

Renvoie l'élément correspondant aux paramètres row et column s'ils ont été définis ; sinon, renvoie nullptr.

Voir également setItem(), takeItem() et itemFromIndex().

[signal] void QStandardItemModel::itemChanged(QStandardItem *item)

Ce signal est émis dès que les données de item ont changé.

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

Réimplémente : QAbstractItemModel::itemData(const QModelIndex &index) const.

Voir aussi setItemData().

QStandardItem *QStandardItemModel::itemFromIndex(const QModelIndex &index) const

Renvoie un pointeur vers l'QStandardItem associé à l'index donné.

L’appel de cette fonction constitue généralement la première étape du traitement des signaux basés sur « QModelIndex » provenant d’une vue, tels que « QAbstractItemView::activated() ». Dans votre slot, vous appelez « itemFromIndex() », en passant en argument l’« QModelIndex » véhiculé par le signal, afin d’obtenir un pointeur vers l’« QStandardItem » correspondant.

Notez que cette fonction créera de manière différée un élément pour l’index (à l’aide de itemPrototype()) et l’ajoutera au tableau des enfants de l’élément parent, si aucun élément n’existe déjà à cet index.

Si index est un index non valide, cette fonction renvoie nullptr.

Voir également ` indexFromItem()`.

const QStandardItem *QStandardItemModel::itemPrototype() const

Renvoie le prototype d'élément utilisé par le modèle. Le modèle utilise ce prototype d'élément comme « fabrique d'éléments » lorsqu'il doit créer de nouveaux éléments à la demande (par exemple, lorsqu'une vue ou un délégué d'élément appelle la méthode ` setData()`).

Voir également setItemPrototype().

[override virtual] QMimeData *QStandardItemModel::mimeData(const QModelIndexList &indexes) const

Réimplémente : QAbstractItemModel::mimeData(const QModelIndexList &indexes) const.

[override virtual] QStringList QStandardItemModel::mimeTypes() const

Réimplémente : ` QAbstractItemModel::mimeTypes()` const.

[override virtual] void QStandardItemModel::multiData(const QModelIndex &index, QModelRoleDataSpan roleDataSpan) const

Réimplémente : ` QAbstractItemModel::multiData` (const QModelIndex &index, QModelRoleDataSpan roleDataSpan) const.

[override virtual] QModelIndex QStandardItemModel::parent(const QModelIndex &child) const

Réimplémente : QAbstractItemModel::parent(const QModelIndex &index) const.

[override virtual] bool QStandardItemModel::removeColumns(int column, int count, const QModelIndex &parent = QModelIndex())

Réimplémente : QAbstractItemModel::removeColumns(int column, int count, const QModelIndex &parent).

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

Réimplémentation de : QAbstractItemModel::removeRows(int row, int count, const QModelIndex &parent).

[override virtual] QHash<int, QByteArray> QStandardItemModel::roleNames() const

Réimplémente : QAbstractItemModel::roleNames() const.

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

Réimplémente : QAbstractItemModel::rowCount(const QModelIndex &parent) const.

Voir aussi setRowCount().

void QStandardItemModel::setColumnCount(int columns)

Définit le nombre de colonnes de ce modèle sur columns. Si cette valeur est inférieure à columnCount(), les données des colonnes non souhaitées sont ignorées.

Voir également columnCount() et setRowCount().

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

Réimplémente : QAbstractItemModel::setData(const QModelIndex &index, const QVariant &value, int role).

Voir aussi data().

[override virtual] bool QStandardItemModel::setHeaderData(int section, Qt::Orientation orientation, const QVariant &value, int role = Qt::EditRole)

Réimplémente : QAbstractItemModel::setHeaderData(int section, Qt::Orientation orientation, const QVariant &value, int role).

Voir également headerData().

void QStandardItemModel::setHorizontalHeaderItem(int column, QStandardItem *item)

Définit l'élément d'en-tête horizontal de column sur item. Le modèle prend en charge cet élément. Si nécessaire, le nombre de colonnes est augmenté pour s'adapter à l'élément. L'élément d'en-tête précédent (s'il y en avait un) est supprimé.

Voir également horizontalHeaderItem(), setHorizontalHeaderLabels() et setVerticalHeaderItem().

void QStandardItemModel::setHorizontalHeaderLabels(const QStringList &labels)

Définit les libellés horizontaux des en-têtes à l'aide de ` labels`. Si nécessaire, le nombre de colonnes est augmenté pour atteindre la taille indiquée par ` labels`.

Voir également setHorizontalHeaderItem().

void QStandardItemModel::setItem(int row, int column, QStandardItem *item)

Définit l'élément correspondant aux coordonnées row et column sur item. Le modèle prend possession de l'élément. Si nécessaire, le nombre de lignes et de colonnes est augmenté pour s'adapter à l'élément. L'élément précédent situé à l'emplacement indiqué (s'il y en avait un) est supprimé.

Voir également item().

void QStandardItemModel::setItem(int row, QStandardItem *item)

Il s'agit d'une fonction surchargée.

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

Réimplémente : QAbstractItemModel::setItemData(const QModelIndex &index, const QMap<int, QVariant> &roles).

Voir aussi itemData().

void QStandardItemModel::setItemPrototype(const QStandardItem *item)

Définit le prototype d'élément du modèle sur l'item spécifié. Le modèle prend possession du prototype.

Le prototype d’élément fait office d’usine de création d’ QStandardItem s, en s’appuyant sur la fonction QStandardItem::clone(). Pour fournir votre propre prototype, créez une sous-classe de QStandardItem, réimplémentez QStandardItem::clone() et définissez le prototype comme une instance de votre classe personnalisée. Chaque fois que ` QStandardItemModel ` doit créer un élément à la demande (par exemple, lorsqu’une vue ou un délégué d’élément appelle ` setData()`), les nouveaux éléments seront des instances de votre classe personnalisée.

Voir également itemPrototype() et QStandardItem::clone().

void QStandardItemModel::setItemRoleNames(const QHash<int, QByteArray> &roleNames)

Définit les noms des rôles des éléments sur « roleNames ».

void QStandardItemModel::setRowCount(int rows)

Définit le nombre de lignes de ce modèle sur rows. Si cette valeur est inférieure à rowCount(), les données des lignes non souhaitées sont ignorées.

Voir également rowCount() et setColumnCount().

void QStandardItemModel::setVerticalHeaderItem(int row, QStandardItem *item)

Définit l'élément d'en-tête vertical pour row sur item. Le modèle prend en charge cet élément. Si nécessaire, le nombre de lignes est augmenté pour l'accueillir. L'élément d'en-tête précédent (s'il y en avait un) est supprimé.

Voir également verticalHeaderItem(), setVerticalHeaderLabels() et setHorizontalHeaderItem().

void QStandardItemModel::setVerticalHeaderLabels(const QStringList &labels)

Définit les libellés verticaux des en-têtes à l'aide de ` labels`. Si nécessaire, le nombre de lignes est augmenté pour atteindre la taille spécifiée par ` labels`.

Voir également setVerticalHeaderItem().

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

Réimplémentation de : QAbstractItemModel::sort(int column, Qt::SortOrder order).

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

Réimplémente : QAbstractItemModel::supportedDropActions() const.

QStandardItemModel Prend en charge à la fois la copie et le déplacement.

QList<QStandardItem *> QStandardItemModel::takeColumn(int column)

Supprime l’ column indiquée sans effacer les éléments de la colonne, et renvoie une liste de pointeurs vers les éléments supprimés. Le modèle libère la propriété des éléments. Pour les éléments de la colonne qui n’ont pas été définis, les pointeurs correspondants dans la liste seront nullptr.

Voir également ` takeRow()`.

QStandardItem *QStandardItemModel::takeHorizontalHeaderItem(int column)

Supprime l'élément d'en-tête horizontal situé à l'adresse column de l'en-tête sans le supprimer, et renvoie un pointeur vers cet élément. Le modèle libère la propriété de l'élément.

Voir également horizontalHeaderItem() et takeVerticalHeaderItem().

QStandardItem *QStandardItemModel::takeItem(int row, int column = 0)

Supprime l'élément situé à l'adresse (row, column) sans le supprimer définitivement. Le modèle cède la propriété de l'élément.

Voir également item(), takeRow() et takeColumn().

QList<QStandardItem *> QStandardItemModel::takeRow(int row)

Supprime l'row spécifiée sans effacer les éléments de la ligne, et renvoie une liste de pointeurs vers les éléments supprimés. Le modèle libère la propriété des éléments. Pour les éléments de la ligne qui n'ont pas été définis, les pointeurs correspondants dans la liste seront nullptr.

Voir aussi takeColumn().

QStandardItem *QStandardItemModel::takeVerticalHeaderItem(int row)

Supprime l'élément d'en-tête vertical situé à l'adresse row de l'en-tête sans le supprimer, et renvoie un pointeur vers cet élément. Le modèle libère la propriété de l'élément.

Voir également verticalHeaderItem() et takeHorizontalHeaderItem().

QStandardItem *QStandardItemModel::verticalHeaderItem(int row) const

Renvoie l'élément d'en-tête vertical correspondant à la ligne row s'il a été défini ; sinon, renvoie nullptr.

Voir également setVerticalHeaderItem() et horizontalHeaderItem().

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