Sur cette page

QItemEditorFactory Class

La classe `QItemEditorFactory` fournit des widgets permettant de modifier les données des éléments dans les vues et les délégués. En savoir plus...

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

Fonctions publiques

QItemEditorFactory()
virtual ~QItemEditorFactory()
virtual QWidget *createEditor(int userType, QWidget *parent) const
void registerEditor(int userType, QItemEditorCreatorBase *creator)
virtual QByteArray valuePropertyName(int userType) const

Membres publics statiques

const QItemEditorFactory *defaultFactory()
void setDefaultFactory(QItemEditorFactory *factory)

Description détaillée

Lors de la modification de données dans une vue d'élément, les éditeurs sont créés et affichés par un délégué. ` QStyledItemDelegate`, qui est le délégué installé par défaut sur les vues d'éléments de Qt, utilise une `QItemEditorFactory` pour créer ses éditeurs. Une instance unique par défaut fournie par QItemEditorFactory est utilisée par tous les délégués d’élément. Si vous définissez une nouvelle fabrique par défaut à l’aide de la fonction setDefaultFactory(), la nouvelle fabrique sera utilisée par les délégués existants et les nouveaux.

Une fabrique conserve une collection d’instances d’ QItemEditorCreatorBase, qui sont des éditeurs spécialisés produisant des éditeurs pour un type de données QVariant particulier (tous les modèles Qt stockent leurs données dans des objets de type QVariant).

Widgets d’édition standard

L’implémentation standard de la fabrique fournit des éditeurs pour divers types de données. Ceux-ci sont créés chaque fois qu’un délégué doit fournir un éditeur pour les données fournies par un modèle. Le tableau suivant présente la relation entre les types et les éditeurs standard fournis.

Des éditeurs supplémentaires peuvent être enregistrés à l'aide de la fonction registerEditor().

Voir également QStyledItemDelegate et Programmation modèle/vue.

Documentation sur les fonctions membres

QItemEditorFactory::QItemEditorFactory()

Crée un nouvel éditeur d'éléments.

[virtual noexcept] QItemEditorFactory::~QItemEditorFactory()

Supprime l'usine d'éditeurs d'éléments.

[virtual] QWidget *QItemEditorFactory::createEditor(int userType, QWidget *parent) const

Crée un widget d'édition avec l'parent spécifiée pour l'userType de données indiquée, et le renvoie sous la forme d'un objet de type ` QWidget`.

Voir également registerEditor().

[static] const QItemEditorFactory *QItemEditorFactory::defaultFactory()

Renvoie l'éditeur d'éléments par défaut.

Voir également setDefaultFactory().

void QItemEditorFactory::registerEditor(int userType, QItemEditorCreatorBase *creator)

Enregistre un créateur d'éditeur d'éléments spécifié par creator pour l'userType de données donnée.

Remarque : l’usine prend possession du créateur d’éditeur d’élément et le détruira si un nouveau créateur du même type est enregistré ultérieurement.

Voir également createEditor().

[static] void QItemEditorFactory::setDefaultFactory(QItemEditorFactory *factory)

Définit l'éditeur d'éléments par défaut sur l'factory spécifiée. Les délégués nouveaux et existants utiliseront tous la nouvelle fabrique.

Voir aussi defaultFactory().

[virtual] QByteArray QItemEditorFactory::valuePropertyName(int userType) const

Renvoie le nom de la propriété permettant d'accéder aux données pour l'userType on donnée de données.

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