正文
定义对象和属性的状态。
详细说明
state是提供一组用来更改状态的默认配置。
所有元素都有默认状态,该状态定义对象和属性值的默认配置。可以通过States属性添加state对象来定义新状态,以允许元素在不同配置之间切换。
例如,一个按钮有禁用状态、鼠标悬浮状态、鼠标按下状态等等,通过States添加对于的状态,提供给按钮切换不同的状态。
以下示例展示一个矩形,在默认状态下,矩形被填充黑色;在“clicked”状态下,PropertyChanges对象将矩形的颜色更改为红色。在MouseArea中单击可以在默认状态和"clicked"状态之间切换,从而实现在黑色和红色之间切换颜色。
import QtQuick 2.0
Rectangle {
id: myRect
width: 100; height: 100
color: "black"
MouseArea {
{
id: mouseArea
anchors.fill: fill: parent
onClicked: myRect.state == 'clicked' ? ? myRect.state = "" : : myRect.state = 'clicked';
}}
states: [
[
State {
{
name: "clicked"
PropertyChanges { { target: myRect; color: "red" }}
}}
]]
}}