QSqlRelationalDelegate Class
QSqlRelationalDelegate 클래스는 QSqlRelationalTableModel 의 데이터를 표시하고 편집하는 데 사용되는 델리게이트를 제공합니다. 더 보기...
| 헤더: | #include <QSqlRelationalDelegate> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Sql) 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는 다른 테이블로의 외래 키인 필드에 대해 콤보박스를 제공합니다. 이 클래스를 사용하려면 QSqlRelationalDelegate 인스턴스를 사용하여 뷰에서 ` QAbstractItemView::setItemDelegate()`를 호출하기만 하면 됩니다:
std::unique_ptr<QTableView> view{new QTableView};
view->setModel(model);
view->setItemDelegate(new QSqlRelationalDelegate(view.get()));아래에 제시된 ‘관계형 테이블 모델’ 예제는 QSqlRelationalDelegate를 QSqlRelationalTableModel 와 함께 사용하여 테이블에 외래 키 지원을 제공하는 방법을 보여줍니다.

QSqlRelationalTableModel 및 모델/뷰 프로그래밍항목도 참조하십시오 .
멤버 함수 문서
[explicit] QSqlRelationalDelegate::QSqlRelationalDelegate(QObject *parent = nullptr)
지정된 ` parent`를 사용하여 `QSqlRelationalDelegate` 객체를 생성합니다.
[virtual noexcept] 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를 재구현합니다.
© 2026 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.