このページでは

NodeInstantiator QML Type

ノードを動的に作成します。詳細...

Import Statement: import Qt3D.Core 2.12
Status: Deprecated

この型は非推奨です。新しいコードでの使用は強く推奨しません。

プロパティ

信号

方法

詳細な説明

NodeInstantiator を使用すると、ノードの動的な作成を制御したり、テンプレートから複数のオブジェクトを動的に作成したりすることができます。

NodeInstantiator要素は、自身が生成したオブジェクトを管理します。これらのオブジェクトはInstantiatorの子として扱われ、NodeInstantiatorのプロパティが変更された場合には、NodeInstantiatorによって削除されることもあります。 ノードは他の手段によっても動的に破棄される可能性がありますが、NodeInstantiator のプロパティが変更されない限り、NodeInstantiator によって再作成されることはありません。

プロパティのドキュメント

active : bool

activeがtrue の場合、デリゲートコンポーネントの準備が整うと、Instantiatorはモデルに従ってオブジェクトを作成します。activeがfalse の場合、オブジェクトは作成されず、以前に作成されたオブジェクトはすべて破棄されます。

デフォルトはtrue です。

asynchronous : bool

asynchronous が true の場合、Instantiator はオブジェクトを非同期的に作成しようとします。つまり、active が true に設定されていても、オブジェクトがすぐに利用可能になるとは限りません。

objectAdded シグナルを使用することで、アイテムが作成されたことに応答できます。

デフォルトは `false` です。

count : int [read-only]

Instantiatorが現在管理しているオブジェクトの数。

delegate : QtQml::Component [default]

すべてのオブジェクトの作成に使用されるコンポーネント。

なお、デリゲートのインスタンス内では、追加の変数「index」が利用可能になります。この変数は、Instantiator 内のそのインスタンスのインデックスを指しており、Instantiator の itemAt メソッドを通じてオブジェクトを取得するために使用できます。

このプロパティが変更されると、古いデリゲートを使用しているすべてのインスタンスが破棄され、新しいデリゲートを使用して新しいインスタンスが作成されます。

model : variant

このプロパティは、サポートされているデータモデルのいずれかに設定できます:

  • リピーターによって作成されるデリゲートの数を示す数値
  • モデル(例:ListModelの項目、またはQAbstractItemModel のサブクラス)
  • 文字列のリスト
  • オブジェクトのリスト

モデルの型によって、delegate に公開されるプロパティが異なります。

デフォルト値は 1 で、これにより 1 つのデリゲート・インスタンスが作成されます。

「データモデル」も参照してください 。

object : QtQml::QtObject [read-only]

これは最初に作成されたオブジェクトへの参照であり、オブジェクトが1つしか作成されていない場合の利便性を考慮したものです。

Signal ドキュメント

objectAdded(int index, QtObject object)

このシグナルは、ノードがNodeInstantiator に追加された際に発火します。index パラメータには、そのノードに割り当てられたインデックスが格納され、object パラメータには、追加されたNode が格納されます。

対応するハンドラはonNodeAdded です。

注: 対応するハンドラは onObjectAdded です。

objectRemoved(int index, QtObject object)

このシグナルは、オブジェクトがInstantiatorから削除されたときに発火します。index パラメータには、そのオブジェクトに割り当てられていたインデックスが格納され、object パラメータには、削除されたQtObject が格納されます。

このInstantiatorによって作成されたobject への参照は保持しないでください。そのような場合、シグナルが処理された直後にそのオブジェクトは削除されるためです。

対応するハンドラはonObjectRemoved です。

注: 対応するハンドラは onObjectRemoved です。

メソッドのドキュメント

object objectAt(int index)

指定されたindex を持つオブジェクトへの参照を返します。

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