QML中的states用法
2012-10-18 11:00 ubunoon 阅读(3531) 评论(0) 编辑 收藏 举报在Rectangle中,可以指定一个state的属性值,表示当前状态,当需要状态切换时,可以指定states属性(注意单复数),这是一个列表属性值,每个列表元素为n多个State状态对象(注意区分大小写),每个State的name用来应对Rectangle中的state值,当state值变为State中的name值时,该State被激活。实际上,所有的Item对象都有state属性值。默认未指定state属性值时,该值为空字符串""
默认的情况下,QML会帮你保存默认定义的state状态,即Item中的颜色,文本,字体等内容属性值。
在State状态对象中,一般采用PropertyChanges方式来修改某个指定对象的属性。
通常State与Transition联合使用。
State对象属性
changes:只读
extend:当一个state从另一个state扩展时,继承了state的所有changes
name:状态名字,重要,名字唯一
when:当想要该state被应用,此时设置为true,当有多个state同时设置了true,则第一个state被应用
states : [ State { name:"hidden"; when:mouseArea.pressed PropertyChanges{target:xxxx} } ]
/*
*
* Copyright (c) 2011 Ubunoon.
* All rights reserved.
*
* email: netubu#gmail.com replace '#' to '@'
* http://www.cnblogs.com/ubunoon
* 欢迎来邮件定制各类验证码识别,条码识别,图像处理等软件
* 推荐不错的珍珠饰品,欢迎订购 * 宜臣珍珠(淡水好珍珠) */
*
* Copyright (c) 2011 Ubunoon.
* All rights reserved.
*
* email: netubu#gmail.com replace '#' to '@'
* http://www.cnblogs.com/ubunoon
* 欢迎来邮件定制各类验证码识别,条码识别,图像处理等软件
* 推荐不错的珍珠饰品,欢迎订购 * 宜臣珍珠(淡水好珍珠) */