Connections QML Type

信号への一般化された接続を記述する。詳細...

Import Statement: import QtQml

プロパティ

詳細説明

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.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。