3. 属性赋值
1. 控件属性、系统变量属性可以通过写脚本来读写。
2. 属性分为可读可写和只读,只读属性在脚本中不能赋值,否则编译会报错。是否可写请查看属性的详细描述。
3. 属性又分为数值变量和字符串变量两种,字符串变量只能赋值字符串类型的常量或变量,数值变量同理。
<1>控件属性
脚本写法:
有类名:[控件名].[类名].[属性名], 写法举例:
b1.txt.str无类名:[控件名].[属性名] 写法举例:
b1.x
属性是否可写
参考属性描述
<2>工程属性
脚本写法:
sys.dirsys.bl属性是否可写
参考属性描述
3.1. 数值变量
支持的赋值符号: = += -= *= /= %= ++自增 --自减
// 正确写法
b1.x = 100; //正确,给控件属性b1.x赋值
sys.bl = 100;//正确,给工程配置属性sys.bl赋值
b1.x = b1.x; //正确,给控件属性b1.x赋值
// 错误写法
b1.type = 10; //错误,编译会报错!b1.type只读不写
b1.y = b1.txt.str; //错误,编译会报错!字符串变量不能赋值给数值变量
// 正确写法(赋值符号举例)
b1.x += 10; //执行后b1.x增加10
b1.x -= 10; //执行后b1.x减少10
b1.x *= 10; //执行b1.x * 10的结果再赋值给b1.x
b1.x /= 10; //执行b1.x / 10的结果再赋值给b1.x, 注意:25/10等于2,只取整数
b1.x %= 10; //执行b1.x % 10的结果再赋值给b1.x, 注意:25%10等于5,求余数
b1.x++; //执行后b1.x增加1
b1.x--; //执行后b1.x减少1
支持的运算符号: + - * / % -负号 ()括号 优先级参考:运算符说明
// 正确写法举例
b1.x = -10;
b1.x = 25 / 10; // 执行完b1.x等于2, 25/10等于2,只取整数
b1.x = 25 % 10; // 执行完b1.x等于5, 25%10等于5,求余数
b1.x = (50 + 100) / 10 - 5; // 执行完结果等于10
b1.x *= (50 + 100) / 10 - 5; // 假设b1.x本身为5,执行完后,b1.x = 10 * 5 即50
// 错误写法举例
b1.x = b1.x++; // 错误!++、--符号只能单独作为一条语句
b1.x = b1.x > 100; // 错误!赋值符号右边不支持关系运算符(> == != < >= <=)
b1.x = b1.x != 100; // 错误!赋值符号右边不支持关系运算符(> == != < >= <=)
b1.x = b1.x && 100; // 错误!赋值符号右边不支持逻辑运算符(&& ||)
b1.x = b1.x & 100; // 错误!赋值符号右边不支持位运算符(& | ^ << >>)
b1.x = b1.x >> 2; // 错误!赋值符号右边不支持位运算符(& | ^ << >>)
3.2. 字符串变量
支持的赋值符号: = += -=
// 正确写法举例
b1.txt.str = "123"; //字符串变量赋值
b1.txt.str += "456"; //b1.txt.str本身为"123" 执行后此语句后,为"123456"。(字符串拼接)
b1.txt.str = b2.txt.str; //将b2的文本字符串赋值给b1
b1.txt.str -= 2; //b1.txt.str本身为"123" 执行后此语句后,为"1"。(字符串删除)
b1.txt.str = "123" - 2; //字符串删除之后再赋值
// 错误写法举例
b1.txt.str = 123; //错误!常量数值不能赋值给字符串变量
b1.txt.str = b2.x; //错误!数值变量不能赋值给字符串变量
b1.txt.str -= "123"; //错误!字符串之间不支持删除运算
支持的运算符号: + -
// 正确写法举例
b1.txt.str = "123" + "456"; // 执行完,b1.txt.str等于"123456"
b1.txt.str = b2.txt.str + "123"; // 将"123"拼接到b2.txt最后,然后赋值给b1.txt
b1.txt.str = b2.txt.str - 2; // 字符串删除2个字符之后再赋值
// 错误写法举例
b1.txt = ("123" + "456"); // 错误! 字符串型变量运算不支持括运算
b1.txt.str = 2 - "123"; // 错误!运算从左往右,不支持数值减去字符串
目前存在的字符串变量:
变量名称 |
解释 |
是否可写 |
|---|---|---|
b1.name |
控件名称(所有控件) |
只读 |
b1.txt.str |
按钮文本值 |
可读可写 |
bl1.txt.str |
自锁按钮文本值 |
可读可写 |
tsl1.txt.str |
选择文本文本值 |
只读 |
tsl1.str |
选择文本选中文本值 |
只读 |
ts1.txt.str |
滚动文本文本值 |
可读可写 |
qr1.str |
二维码文本值 |
可读可写 |
l1.txt.str |
列表文本值 |
只读 |
l1.str |
列表选中文本值 |
只读 |
val1.txt |
变量的文本值 |
可读可写 |
a1.path |
音频的路径(路径为外部TF卡时) |
可读可写 |
v1.path |
视频的路径(路径为外部TF卡时) |
可读可写 |
提示
字符串型变量有最最大长度size属性(参考控件的文本属性),当加法运算或赋值的长度大于size时,意味着丢弃多余的字符