Spec-Zone.ru › Qt 6.1

Класс 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)
virtual ~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

Подробное описание

В отличие от стандартного делегата, 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.1/qsqlrelationaldelegate.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API