Connections QML Type
信号への一般化された接続を記述する。詳細...
Import Statement: | import QtQml |
プロパティ
- enabled : bool
- ignoreUnknownSignals : bool
- target : QtObject
詳細説明
ConnectionsオブジェクトはQMLシグナルへの接続を生成します。
QMLでシグナルに接続する場合、通常はこのようにシグナルを受信したときに応答する "on<Signal>" ハンドラを作成します:
MouseArea { onClicked: (mouse)=> { foo(mouse) } }
しかし、この方法ではシグナルに接続できない場合があります:
- 同じシグナルに複数の接続が必要な場合
- シグナル送信者の範囲外で接続を作成する。
- QMLで定義されていないターゲットへの接続
これらのいずれかが必要な場合、代わりにConnections型を使用することができます。
例えば、上記のコードは次のようにConnectionsオブジェクトを使用するように変更することができます:
MouseArea { Connections { function onClicked(mouse) { foo(mouse) } } }
より一般的には、Connectionsオブジェクトはシグナルの送信者以外のオブジェクトの子にすることができます:
MouseArea { id: area } // ...
Connections { target: area function onClicked(mouse) { foo(mouse) } }
注意: 後方互換性を保つために、function
を使わずに、ターゲット・オブジェクトに直接指定するようにシグナル・ハンドラを指定することもできます。これは推奨されません。この方法で1つのシグナルハンドラを指定した場合、同じConnectionsオブジェクトでfunction
として指定されたすべてのシグナルハンドラは無視されます。
Qt Qmlも参照してください 。
プロパティ ドキュメント
enabled : bool |
このプロパティは、アイテムが変更イベントを受け入れるかどうかを保持します。
デフォルトでは、このプロパティはtrue
です。
ignoreUnknownSignals : bool |
通常、存在しないシグナルへの接続はランタイムエラーを発生させます。
このプロパティをtrue
に設定すると、そのようなエラーは無視されます。これは、異なるタイプのオブジェクトに接続し、オブジェクトごとに異なるシグナル・セットを処理する場合に便利です。
target : QtObject |
このプロパティは、シグナルを送信するオブジェクトを保持します。
このプロパティが設定されていない場合、target
は Connection の親をデフォルトとします。
NULLに設定された場合、接続は行われず、ターゲットがNULLでなくなるまで、どのシグナルハンドラも無視されます。
本ドキュメントに含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。