QSqlRelationalDelegate 类

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

头: #include <QSqlRelationalDelegate>
qmake: QT += sql
继承: QItemDelegate

公共函数

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

重实现公共函数

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

额外继承成员

详细描述

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 QAbstractItemView::setItemDelegate () on the view with an instance of QSqlRelationalDelegate :

    QTableView *view = new QTableView;
    view->setModel(model);
    view->setItemDelegate(new QSqlRelationalDelegate(view));
					

The 关系表模型 example (shown below) illustrates how to use QSqlRelationalDelegate in conjunction with QSqlRelationalTableModel to provide tables with foreign key support.

另请参阅 QSqlRelationalTableModel and 模型/视图编程 .

成员函数文档编制

QSqlRelationalDelegate:: QSqlRelationalDelegate ( QObject * parent = nullptr)

构造 QSqlRelationalDelegate 对象采用给定 parent .

QSqlRelationalDelegate:: ~QSqlRelationalDelegate ()

销毁 QSqlRelationalDelegate 对象并释放任何分配资源。

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

重实现自 QAbstractItemDelegate::createEditor ().

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

重实现自 QAbstractItemDelegate::setModelData ().