QSqlRelationalDelegate Class

Die Klasse QSqlRelationalDelegate stellt einen Delegaten zur Verfügung, der zur Anzeige und Bearbeitung von Daten aus einer QSqlRelationalTableModel.. . Mehr...

Kopfzeile: #include <QSqlRelationalDelegate>
CMake: find_package(Qt6 REQUIRED COMPONENTS Sql)
target_link_libraries(mytarget PRIVATE Qt6::Sql)
qmake: QT += sql
Vererbt: QStyledItemDelegate

Öffentliche Funktionen

QSqlRelationalDelegate(QObject *parent = nullptr)
virtual ~QSqlRelationalDelegate()

Reimplementierte öffentliche Funktionen

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

Detaillierte Beschreibung

Anders als der Standarddelegat bietet QSqlRelationalDelegate eine Combobox für Felder, die Fremdschlüssel in anderen Tabellen sind. Um die Klasse zu verwenden, rufen Sie einfach QAbstractItemView::setItemDelegate() auf dem View mit einer Instanz von QSqlRelationalDelegate auf:

    std::unique_ptr<QTableView> view{new QTableView};
    view->setModel(model);
    view->setItemDelegate(new QSqlRelationalDelegate(view.get()));

Das Beispiel des relationalen Tabellenmodells (siehe unten) zeigt, wie QSqlRelationalDelegate in Verbindung mit QSqlRelationalTableModel verwendet werden kann, um Tabellen mit Fremdschlüsselunterstützung bereitzustellen.

Siehe auch QSqlRelationalTableModel und Model/View Programming.

Dokumentation der Mitgliedsfunktionen

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

Konstruiert ein QSqlRelationalDelegate Objekt mit der angegebenen parent.

[virtual noexcept] QSqlRelationalDelegate::~QSqlRelationalDelegate()

Zerstört das Objekt QSqlRelationalDelegate und gibt alle zugewiesenen Ressourcen frei.

[override virtual] QWidget *QSqlRelationalDelegate::createEditor(QWidget *parent, const QStyleOptionViewItem &option, const QModelIndex &index) const

Reimplements: QStyledItemDelegate::createEditor(QWidget *parent, const QStyleOptionViewItem &option, const QModelIndex &index) const.

[override virtual] void QSqlRelationalDelegate::setModelData(QWidget *editor, QAbstractItemModel *model, const QModelIndex &index) const

Reimplements: QStyledItemDelegate::setModelData(QWidget *editor, QAbstractItemModel *model, const QModelIndex &index) const.

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