QSqlRelationalDelegate Class
La classe QSqlRelationalDelegate fournit un délégué qui est utilisé pour afficher et modifier des données à partir d'un site QSqlRelationalTableModel. Plus....
| En-tête : | #include <QSqlRelationalDelegate> |
| CMake : | find_package(Qt6 REQUIRED COMPONENTS Sql)target_link_libraries(mytarget PRIVATE Qt6::Sql) |
| qmake : | QT += sql |
| Héritages : | QStyledItemDelegate |
Fonctions publiques
| QSqlRelationalDelegate(QObject *parent = nullptr) | |
| virtual | ~QSqlRelationalDelegate() |
Fonctions publiques réimplémentées
| virtual QWidget * | createEditor(QWidget *parent, const QStyleOptionViewItem &option, const QModelIndex &index) const override |
| virtual void | setModelData(QWidget *editor, QAbstractItemModel *model, const QModelIndex &index) const override |
Description détaillée
Contrairement au délégué par défaut, QSqlRelationalDelegate fournit une boîte de dialogue pour les champs qui sont des clés étrangères dans d'autres tables. Pour utiliser la classe, il suffit d'appeler QAbstractItemView::setItemDelegate() sur la vue avec une instance de QSqlRelationalDelegate :
std::unique_ptr<QTableView> view{new QTableView}; view->setModel(model); view->setItemDelegate(new QSqlRelationalDelegate(view.get()));
L'exemple du modèle de table relationnelle (ci-dessous) illustre comment utiliser QSqlRelationalDelegate en conjonction avec QSqlRelationalTableModel pour fournir des tables avec un support de clé étrangère.

Voir également QSqlRelationalTableModel et Model/View Programming.
Documentation sur les fonctions membres
[explicit] QSqlRelationalDelegate::QSqlRelationalDelegate(QObject *parent = nullptr)
Construit un objet QSqlRelationalDelegate avec l'adresse parent.
[virtual noexcept] QSqlRelationalDelegate::~QSqlRelationalDelegate()
Détruit l'objet QSqlRelationalDelegate et libère les ressources allouées.
[override virtual] QWidget *QSqlRelationalDelegate::createEditor(QWidget *parent, const QStyleOptionViewItem &option, const QModelIndex &index) const
Réimplémente : QStyledItemDelegate::createEditor(QWidget *parent, const QStyleOptionViewItem &option, const QModelIndex &index) const.
[override virtual] void QSqlRelationalDelegate::setModelData(QWidget *editor, QAbstractItemModel *model, const QModelIndex &index) const
Réimplémente : QStyledItemDelegate::setModelData(QWidget *editor, QAbstractItemModel *model, const QModelIndex &index) const.
© 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.