このページでは

QItemEditorFactory Class

QItemEditorFactory クラスは、ビューやデリゲート内でアイテムデータを編集するためのウィジェットを提供します。詳細...

ヘッダー: #include <QItemEditorFactory>
CMake: find_package(Qt6 REQUIRED COMPONENTS Widgets)
target_link_libraries(mytarget PRIVATE Qt6::Widgets)
qmake: QT += widgets

パブリック関数

QItemEditorFactory()
virtual ~QItemEditorFactory()
virtual QWidget *createEditor(int userType, QWidget *parent) const
void registerEditor(int userType, QItemEditorCreatorBase *creator)
virtual QByteArray valuePropertyName(int userType) const

静的パブリックメンバー

const QItemEditorFactory *defaultFactory()
void setDefaultFactory(QItemEditorFactory *factory)

詳細な説明

アイテムビューでデータを編集する場合、エディタはデリゲートによって作成・表示されます。Qt XML のアイテムビューにデフォルトでインストールされているデリゲートであるQStyledItemDelegate は、QItemEditorFactory を使用してエディタを作成します。 QItemEditorFactory によって提供されるデフォルトの固有インスタンスは、すべてのアイテムデリゲートによって使用されます。setDefaultFactory() を使用して新しいデフォルトのファクトリを設定すると、その新しいファクトリは既存および新規のデリゲートによって使用されます。

ファクトリは、QItemEditorCreatorBase インスタンスのコレクションを保持します。これらは、特定のQVariant データ型(すべての Qt モデルは、データをQVariantに格納します)用のエディタを生成する、特殊化されたエディタです。

標準の編集ウィジェット

標準のファクトリ実装は、さまざまなデータ型に対応するエディタを提供します。これらは、デリゲートがモデルから提供されたデータ用のエディタを用意する必要があるたびに生成されます。次の表は、各データ型と提供される標準エディタとの関係を示しています。

registerEditor() 関数を使用して、追加のエディタを登録することができます。

QStyledItemDelegate およびモデル/ビュープログラミングも参照してください 。

メンバ関数のドキュメント

QItemEditorFactory::QItemEditorFactory()

新しいアイテムエディタファクトリを作成します。

[virtual noexcept] QItemEditorFactory::~QItemEditorFactory()

アイテムエディタのファクトリを破棄します。

[virtual] QWidget *QItemEditorFactory::createEditor(int userType, QWidget *parent) const

指定されたデータuserType に対して、指定されたparent を持つエディタウィジェットを作成し、それをQWidget として返します。

registerEditor()も参照してください 。

[static] const QItemEditorFactory *QItemEditorFactory::defaultFactory()

デフォルトのアイテムエディタファクトリを返します。

setDefaultFactory()も参照してください 。

void QItemEditorFactory::registerEditor(int userType, QItemEditorCreatorBase *creator)

指定されたデータuserType に対して、creator で指定されたアイテムエディタ作成者を登録します。

注:ファクトリはアイテムエディタクリエーターの所有権を取得し、後で同じ型に対する新しいクリエーターが登録された場合は、それを破棄します。

createEditor()も参照してください 。

[static] void QItemEditorFactory::setDefaultFactory(QItemEditorFactory *factory)

デフォルトのアイテムエディタファクトリを、指定されたfactory に設定します。新規および既存のデリゲートの両方が、この新しいファクトリを使用するようになります。

defaultFactory()も参照してください 。

[virtual] QByteArray QItemEditorFactory::valuePropertyName(int userType) const

指定されたデータuserType のデータにアクセスするために使用されるプロパティ名を返します。

© 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.