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

<pre name="code" class="cpp">import QtQuick 2.2

Item {
    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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值