写QML界面会经常使用到很多的属性,其中属性的绑定与解绑尤其重要,决定着该界面属性是否能动态更新的功能。本文介绍属性的绑定与非绑定特性。
:
操作符,作用是左值绑定右值。Item {
property color myColor: "white"
...
Rectangle {
color: myColor
...
}
}
color
绑定父控件 myColor
属性。=
操作符,作用是左值解除右值绑定Item {
property color myColor: "white"
...
Rectangle {
color: myColor
...
Component.onCompleted: color = "blue"
}
}
color="blue"
被执行时会解除 color:myColor
的绑定Binding
控件对已经解除绑定的属性重新绑定。Item {
property color myColor: "white"
...
Rectangle {
color: myColor
...
Component.onCompleted: color = "blue"
}
Binding {
target: rect
property: "color"
value: root.myColor
}
}
target
为被绑定(左值)的id;property
为被绑定(左值)的属性,注意类型为字符串;value
为绑定(右值)的属性。