QItemEditorCreator Class
template <typename T> class QItemEditorCreatorQItemEditorCreator クラスを使用すると、QItemEditorCreatorBase をサブクラス化することなく、アイテムエディタクリエーターのベースクラスを作成することができます。詳細...
| ヘッダー: | #include <QItemEditorCreator> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Widgets) target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
| qmake: | QT += widgets |
| 継承元: | QItemEditorCreatorBase |
パブリック関数
| QItemEditorCreator(const QByteArray &valuePropertyName) |
再実装されたパブリック関数
| virtual QWidget * | createWidget(QWidget *parent) const override |
| virtual QByteArray | valuePropertyName() const override |
詳細な説明
QItemEditorCreator<T> は、T がウィジェットの型を指定する便利なテンプレートクラスです。このクラスは、QItemEditorFactory 用のエディタを作成するためにこのテンプレートクラスを使用します。これにより、QItemEditorCreatorBase をサブクラス化する必要がなくなります。
QItemEditorCreator<MyEditor> *itemCreator =
new QItemEditorCreator<MyEditor>("myProperty");
QItemEditorFactory *factory = new QItemEditorFactory;コンストラクタには、編集データを含むプロパティの名前が渡されます。これにより、QStyledItemDelegate は、編集データの設定や取得を行う際に、その名前でプロパティにアクセスできます。このクラスは、エディタがユーザープロパティ(Q_PROPERTY マクロ内のUSERキーワードを使用して)を定義していない場合にのみ使用してください。ウィジェットにユーザープロパティがある場合は、代わりにQStandardItemEditorCreator を使用する必要があります。
関連項目: QItemEditorCreatorBase 、QStandardItemEditorCreator 、およびQItemEditorFactory 。
メンバ関数のドキュメント
[explicit] QItemEditorCreator::QItemEditorCreator(const QByteArray &valuePropertyName)
valuePropertyName を編集に使用するプロパティ名として指定し、エディタ作成オブジェクトを構築します。このプロパティ名は、QStyledItemDelegate がエディタデータを設定および取得する際に使用されます。
なお、valuePropertyName は、エディタウィジェットにユーザープロパティが定義されていない場合にのみ使用されます。
[override virtual] QWidget *QItemEditorCreator::createWidget(QWidget *parent) const
QItemEditorCreatorBase::createWidget(QWidget *parent) const を再実装します。
[override virtual] QByteArray QItemEditorCreator::valuePropertyName() const
QItemEditorCreatorBase::valuePropertyName() 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.