QSqlRelationalDelegate — PyQt Documentation v6.9.0 (original) (raw)

PyQt6.QtSql.QSqlRelationalDelegate

Inherits from QStyledItemDelegate.

Description

The QSqlRelationalDelegate class provides a delegate that is used to display and edit data from a QSqlRelationalTableModel.

Unlike the default delegate, QSqlRelationalDelegate provides a combobox for fields that are foreign keys into other tables. To use the class, simply call setItemDelegate() on the view with an instance of QSqlRelationalDelegate:

std::unique_ptr view{new QTableView};

view->setModel(model);

view->setItemDelegate(new QSqlRelationalDelegate(view.get()));

The Relational Table Model example (shown below) illustrates how to use QSqlRelationalDelegate in conjunction with QSqlRelationalTableModel to provide tables with foreign key support.

../../_images/relationaltable.png

See also

QSqlRelationalTableModel, Model/View Programming.

Methods

__init__(parent: QObject = None)

Constructs a QSqlRelationalDelegate object with the given parent.


createEditor(QWidget, QStyleOptionViewItem, QModelIndex) → QWidget

TODO


setEditorData(QWidget, QModelIndex)

TODO


setModelData(QWidget, QAbstractItemModel, QModelIndex)

TODO