Qt QML:如何激发项param chenge上的事件(并将其值传递给它)?

Qt QML:如何激发项param chenge上的事件(并将其值传递给它)?,qt,qml,Qt,Qml,我有一个值为param的项目。我想知道如何抓住它的变化事件 假设有一个RectComp.qml: Item{ property alias currentX: rect.x Rectangle { id: rect x: 617 y: 450 } } 从创建其实例的应用程序处理其currentX更改 Rectangle { id: host

我有一个值为param的项目。我想知道如何抓住它的变化事件

假设有一个RectComp.qml:

Item{
    property alias currentX: rect.x
       Rectangle {
           id: rect
           x: 617
           y: 450
       }
}
从创建其实例的应用程序处理其
currentX
更改

       Rectangle {
           id: host
           x: 617
           y: 450
           RectComp{ id: MyRC}
           OnMyRCcurrentXChange(int){log("hello!")}
       }
根据Qt文档,“向项添加属性会自动向项添加值更改的信号处理程序。”

因此,您的代码将更改为以下内容

 Rectangle {
       id: host
       x: 617
       y: 450
       RectComp{ id: MyRC
         onCurrentXChanged:{
             console.log("Hello");
         }
       }
   }
也可以使用连接元素

 Connections {
     target: MyRC
     onCurrentXChanged: {
        console.log("Hello");
     }
 }
根据Qt文档,“向项添加属性会自动向项添加值更改的信号处理程序。”

因此,您的代码将更改为以下内容

 Rectangle {
       id: host
       x: 617
       y: 450
       RectComp{ id: MyRC
         onCurrentXChanged:{
             console.log("Hello");
         }
       }
   }
也可以使用连接元素

 Connections {
     target: MyRC
     onCurrentXChanged: {
        console.log("Hello");
     }
 }