我有一个带有值参数的项目。我想知道如何抓住它的变化事件?
假设有一个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!")}
}
答案 0 :(得分:4)
根据Qt文档“向项目添加属性会自动将值更改的信号处理程序添加到项目中。”
因此,您的代码将更改为以下
Rectangle {
id: host
x: 617
y: 450
RectComp{ id: MyRC
onCurrentXChanged:{
console.log("Hello");
}
}
}
或者您可以使用Connection元素
Connections {
target: MyRC
onCurrentXChanged: {
console.log("Hello");
}
}