滑块控件

1. 属性

属性

说明

id

控件ID号,不可更改

global

勾选:作用于全局,不勾选:作用于所在页; 不可脚本读写

name

控件名称,可改,默认名称slider+序号

x

控件起始点x坐标

y

控件起始点y坐标

width

控件宽度,可读写

height

控件高度,可读写

locked

勾选后锁定控件位置,但不影响脚本操作控件属性

visible

控件是否可见,脚本:visible=1,可见,visible=0,不可见

opacity

不透明度,opacity=0,完全透明,opacity=100,完全不透明。值介于0~100之间。默认100,非必要不建议修改此项。
注:仅S系列支持调整透明度

minVal

设置滑块最小值

maxVal

设置滑块最大值

val

滑块当前值,改变当前值,可以改变滑块的位置,val=50,滑块移动到,0~100值范围的中间位置。

bgType

背景类型,颜色或者图片

bgColor

如果设置为颜色,设定具体颜色

bgImg

背景类型是图片时,选择背景图片。根据图片资源名称和顺序号选择。

bgImgMd

背景是图片时,默认背景的对齐模式。
控件对齐:图片左上角对齐控件左上角。
页面对齐:图片左上角对齐页面的左上角

tbType

游标 背景类型,颜色或者图片

tbColor

如果设置为颜色,设定具体颜色

tbImg

背景类型是图片时,选择背景图片。根据图片资源名称和顺序号选择。

tbWidth

游标宽度,如果游标背景是图片,图片宽度要>=游标宽度。

ori

滑块摆放方向:横放 -> horizont,竖放 -> vertical。

showSel

是否显示选择范围。
选中,显示颜色或者图片,必须和bgtype选项一致。滑块画过的区域会显示selBgImg属性设置的颜色或者图片;
不选,滑块在设置的颜色或者图片上滑动,没有改变颜色或者图片的效果。

selBgColor

划过区域,背景类型是颜色时,选择背景颜色。

selBgImg

划过区域,背景类型是图片时,选择背景图片。根据图片资源名称和顺序号选择。

selBgImgMd

划过区域,背景类型是图片时,默认背景图片的对齐模式。
控件对齐:图片左上角对齐控件左上角。
页面对齐:图片左上角对齐页面的左上角

valel

仅在触摸时,触发值改变事件。
不选中,其他控件脚本改变滑块的val属性值时,可以触发滑块的值改变事件。
选中,只有通过触摸屏滑动滑块,才能触发值改变的事件,运行事件的脚本。
选中后,可以控制只有触摸滑块才能使用滑块功能。 默认不选中。

2. 事件

滑块控件的值改变事件可以写入脚本,当滑块值发生改变时触发脚本,常用在设置亮度,声音,播放进度等功能之中。

例如 移动滑块改变系统亮度

sys_light=slidero.val;

滑块值可以设置范围,默认滑块范围是0-100;

3. 示例

3.1 在脚本中访问属性(控件名以slider0为例)

3.1.1. 获取滑块控件背景类型(slider0.bgType)

例如 定义一个整数,获取控件背景类型

int type;
type=slider0.bgType; //返回值为0背景类型为颜色,返回值2背景类型为图片

3.1.2. 设置滑块控件的背景颜色(slider0.bgColor)

例如 设置滑块控件背景颜色为红色

slider0.bgColor=0xffff0000;//十六进制颜色格式

应用技巧:利用控件不同状态下的背景颜色是设计UI是最方便有效的方法,vp提供控件在不同操作状态下的背景颜色供客户使用

3.1.3. 设置滑块控件背景图片(slider0.bgImg)

例如 设置滑块控件背景图片为图片素材库第一张图片

slider0.bgImg=1;

应用技巧:利用控件不同状态下的背景图片可以设计不同风格的ui,vp提供非常自由的图片选择,图片尽量选用JPG格式,系统解码更快,运行更流畅,控件背景图片的对齐方式可以选择页面对齐,这样可以与页面背景用同一张图片,这样会最大程度的减少素材所占空间,系统运行也会更快,G系列暂时不支持带透明格式的png图片,但是S系列则支持这一选项

3.1.4. 获取滑块游标类型(slider0.tbType)

例如 定义一个整数,获取控件背景类型

int type;
type=slider0.tbType; //返回值为0背景类型为颜色,返回值2背景类型为图片

3.1.5. 设置游标背景颜色(slider0.tbColor)

例如 设置游标背景颜色为绿色

slider0.tbColor=0xff00ff00;

当背景为图片时

3.1.6. 设置游标背景图片(slider0.tbImg)

例如 设置游标背景图片为图片素材库第一张图片

slider0.tbImg=1;

应用技巧:使用不同图片素材可以将滑块做成不同的ui效果,游标背景图片无法选则页面对齐,故必须使用单独的素材

3.1.7. 设置滑块控件的高度(slider0.height)

例如 设置滑块高度为100

slider0.height=100;

3.1.8. 设置滑块控件的宽度(slider0.width)

例如 设置控件宽度为50

slider0.height=50;

3.1.9. 设置滑块位置的x坐标(slider0.x)

例如 设置控件x坐标为100

slider0.x=100;//坐标原点x=0为页面左上角顶点

3.1.10. 设置滑块位置的y坐标(slider0.y)

例如 设置控件y坐标为100

slider0.y=100;//坐标原点y=0为页面左上角顶点

应用技巧:控件的宽高和坐标,表示控件在工程中的大小和位置,数值都是以像素为单位,编辑此属性首先要了解工程对应串口屏的像素大小,利用对宽高和坐标的编辑,可以实现控件UI丰富多彩的变换。

3.1.11. 设置滑块控件的最大值(slider0.maxVal)

例如 设置控件的最大值为200

slider0.maxVal=200; 

3.1.12. 设置滑块控件的最小值(slider0.minVal)

例如 设置控件的最大值为100

slider0.minVal=100;

应用技巧:滑块的最值要配合具体使用场景,滑块值会在给定的最值范围内均匀分布,比如,当用户用滑块控制RGB颜色时,此时单一色块最大值应为255,最小值为0。当用滑块显示控制音视频播放进度时,最大值为100,最小值为0。

3.1.13. 设置滑块控件的游标宽度(slider0.tbWidth)

例如 设置控件的最大值为20

slider0.tbWidth=20; 

3.1.14. 设置滑块控件的游标宽度(slider0.tbWidth)

例如 设置控件的最大值为20

slider0.tbWidth=20; 

3.1.15. 设置滑块控件的当前值(slider0.val)

例如 设置控件当前值为50

slider0.val=50;

应用技巧:此属性两个用法,

1. 编辑工程时,选定的当前值(默认是0)要与滑块表示的数据默认值一致。当切换页面时,控件的全局属性要勾选,否则每次回到页面滑块当前值会恢复到默认值,重新上电时,如果需要保留上次的数据需要做掉电保存,掉电保存相关操作见对应文档。

2. 脚本设置当前值可以触发值改变事件,比如控制播放进度时,值改变事件中将当前值与播放进度关联,就可以实时控制播放进度了

3.1.16. 设置滑块控件的方向(slider.ori)

例如 设置控件当前方向为垂直方向

slider0.ori=1; //0水平方向 “Horizo”  1为垂直方向 ”Vertical”

3.1.17. 设置滑块控件是否显示选择范围(slider.showSel)

例如 设置控件为显示

slider0.showSel=1; // 0为不显示  1为显示

3.1.18. 设置滑块控件选择范围的背景颜色(slider.selBgColor)

例如 设置选择范围的背景颜色为红色

slider0.selBgColor=0xffff0000; //十六进制颜色格式

应用技巧:选择范围的显示和背景的改变,用来制作丰富的UI,区分选择区域和总区域在很多时候是必要的,于是vp提供了这种选择

3.1.19. 设置滑块控件仅在触摸时触发值改变事件(slider.valel)

例如 设置仅在触摸时值改变事件才有效

slider0.valel=1; //0为不开启,值改变就出发值改变事件  1为开启,只有触摸时值改变事件才会生效

3.1.20. 设置滑块控件的可见性(slider0.visible)

例如 设置控件为可见

slider0.visible=1; //0为不可见 1为可见

应用技巧:vp工程中控件并非时时必须显示,可视性这个属性实现了控件视觉效果的可编辑性,用户自定义可视性,可配合其他控件在脚本中编辑,也可以配合协议解析器,在通讯过程中控制控件的显示和隐藏,简单直接且行之有效。

3.1.21. 设置滑块控件的透明度(slider0.opacity)

例如 设置滑块控件透明度0-100 0完全透明不可见 仅S系列支持调整

slider0.opacity=50; //0完全透明 100完全不透明

应用技巧:透明度在UI上的用处就是能透过控件看到背景,特定风格之下的UI大有用处,但是透明度会增加系统工作量,非必要时刻不建议使用,如果背景素材希望设置成带透明的,目前网络上很多制图P图软件都可以做到这一点,将素材做成图片图片很多时候都是一个不错的选择。

4. 常见问题

滑块可以用来显示进度,也可以手动控制改变数值,滑块总共有三个部分,背景,游标,选择范围,设计ui时可以选择不同类型的图片或者颜色设置这三个部分,丰富自己的ui。

滑块的值默认状态是每次加载页面都是重置,这有时候可能并不方便,所以记得勾选全局属性。

当重新上电的时候需要保存滑块值时,记得做掉电保存,多数情况下屏本身flash是一个不错的地方,如果数据较多或者刷写频繁,建议做在sd卡。