Класс QSqlRelationalDelegate
Класс QSqlRelationalDelegate предоставляет делегат, используемый для отображения и редактирования данных из QSqlRelationalTableModel. Подробнее...
| Заголовок: | #include <QSqlRelationalDelegate> |
| CMake: | find_package(Qt6 COMPONENTS Sql REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Sql) |
| qmake: | QT += sql |
| Наследуется от: | QStyledItemDelegate |
Открытые функции
| QSqlRelationalDelegate(QObject *parent = nullptr) | |
| виртуальный | ~QSqlRelationalDelegate() |
Переопределенные открытые функции
| виртуальный QWidget * | createEditor(QWidget *parent, const QStyleOptionViewItem &option, const QModelIndex &index) const override |
| виртуальный void | setModelData(QWidget *editor, QAbstractItemModel *model, const QModelIndex &index) const override |
Подробное описание
В отличие от стандартного делегата, QSqlRelationalDelegate предоставляет раскрывающийся список для полей, являющихся внешними ключами в другие таблицы. Для использования класса, просто вызовите QAbstractItemView::setItemDelegate() на представлении с экземпляром QSqlRelationalDelegate:
std::unique_ptr<QTableView> view{new QTableView};
view->setModel(model);
view->setItemDelegate(new QSqlRelationalDelegate(view.get())); Пример модели реляционной таблицы (показанный ниже) демонстрирует, как использовать QSqlRelationalDelegate в сочетании с QSqlRelationalTableModel для предоставления таблиц с поддержкой внешних ключей.
См. также QSqlRelationalTableModel и Программирование с моделями и представлениями.
Документация по функциям-членам
QSqlRelationalDelegate::QSqlRelationalDelegate(QObject *parent = nullptr)
Создаёт объект QSqlRelationalDelegate с заданным parent.
[virtual] QSqlRelationalDelegate::~QSqlRelationalDelegate()
Удаляет объект QSqlRelationalDelegate и освобождает все выделенные ресурсы.
[override virtual] QWidget *QSqlRelationalDelegate::createEditor(QWidget *parent, const QStyleOptionViewItem &option, const QModelIndex &index) const
Переопределяет: QStyledItemDelegate::createEditor(QWidget *parent, const QStyleOptionViewItem &option, const QModelIndex &index) const.
[override virtual] void QSqlRelationalDelegate::setModelData(QWidget *editor, QAbstractItemModel *model, const QModelIndex &index) const
Переопределяет: QStyledItemDelegate::setModelData(QWidget *editor, QAbstractItemModel *model, const QModelIndex &index) const.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.0/qsqlrelationaldelegate.html