- Qt 6.10
- Qt Qml
- QML Types
- Connections
- Qt 6.10.1 Reference Documentation

# Connections QML Type

Describes generalized connections to signals. More...

Import Statement: | `import QtQml`

- List of all members, including inherited members

## Properties

- enabled : bool
- ignoreUnknownSignals : bool
- target : QtObject

## Detailed Description

A Connections object creates a connection to a QML signal.

When connecting to signals in QML, the usual way is to create an "on<Signal>" handler that reacts when a signal is received, like this:

     MouseArea {
         onClicked: (mouse)=> { foo(mouse) }
     }

However, it is not possible to connect to a signal in this way in some cases, such as when:

- Multiple connections to the same signal are required
- Creating connections outside the scope of the signal sender
- Connecting to targets not defined in QML

When any of these are needed, the Connections type can be used instead.

For example, the above code can be changed to use a Connections object, like this:

     MouseArea {
         Connections {
             function onClicked(mouse) { foo(mouse) }
         }
     }

More generally, the Connections object can be a child of some object other than the sender of the signal:

     MouseArea {
         id: area
     }
     // ...

     Connections {
         target: area
         function onClicked(mouse) { foo(mouse) }
     }

Note: For backwards compatibility you can also specify the signal handlers without `function`, like you would specify them directly in the target object. This is not recommended. If you specify one signal handler this way, then all signal handlers specified as `function` in the same Connections object are ignored.

See also Qt Qml.

## Property Documentation

enabled : bool

This property holds whether the item accepts change events.

By default, this property is `true`.

ignoreUnknownSignals : bool

Normally, a connection to a non-existent signal produces runtime errors.

If this property is set to `true`, such errors are ignored. This is useful if you intend to connect to different types of objects, handling a different set of signals for each object.

target : QtObject

This property holds the object that sends the signal.

If this property is not set, the `target` defaults to the parent of the Connection.

If set to null, no connection is made and any signal handlers are ignored until the target is not null.