属性绑定:属性被绑定到一个表达式,这个属性就会被设置为自动更新,但是,分配静态值会移除绑定

来源:互联网 发布:谷歌娘软件 编辑:程序博客网 时间:2024/06/06 05:19
<pre name="code" class="cpp">import QtQuick 2.2Item {    width: 600; height: 600    Rectangle {        width: 10; height: width * 2        color: "red"; anchors.centerIn: parent; focus: true        Keys.onSpacePressed: height = width * 3        //height属性由JavaScript语句分配了一个静态值,原有的绑定会被清除(height: width * 2)        MouseArea {            anchors.fill: parent            onClicked: parent.width += 10        }    }}

解释:当矩形的height初始时绑定为width的两倍,而当按下空格键以后,height值会更改为width的3倍。这时,height属性会分配为当前的表达式的值即width * 3的结果,而以前的绑定会被移除,就是说以后当width值更改时,height不再自动更新。

(知识点:属性绑定  书P74)   如果不是为了移除绑定,而是想创建一个新的绑定,则需要使用Qt.binding()来实现。见书P74

0 0