State表示元素的一种状态,一个State可以绑定一些列的属性配置。

 

一个元素可以有多个状态,而每个状态又包含了很多的属性配置,切换

状态就可以达到快速改变一堆的属性目的,干净利落。

 

State有4个属性

changes:表示该状态需要改变什么,也就是State需要绑定的配置。

extend:表示从哪个状态扩展,相当于继承。

name:状态的名字,区别其他状态。

when:bool类型,true是表示使用当前状态,如果有多个状态的when都是true,第一个生效。

 

示例:

例子中通过states属性为rect添加了两个状态,一个是normal,另一个是'pressed'。

两个状态changes都只配置了颜色,在normal状态下颜色为蓝色,在pressed状态下颜色为红色。

通过when属性设置了状态的触发条件,当鼠标按下时为pressed状态,反之为normal。

 

通过以上配置实现的效果为矩形rect默认为蓝色的,当鼠标按下时变成红色,松开鼠标又

变成蓝色。运行效果:

---> 文章来源于我的个人博客:fearlazy
---> 编程是一件怎么也学不会的事情,但是如果能享受学习的过程也是挺好的。