设定值滑块
在两端之间的一个滑块:拖动只是把值准备好,按键才写入,其余时候滑块跟随现场。
设定值滑块用手势而不是键入来移动一个设定值。它防的是滑块唯一可能出的那种事故,靠的是两步规矩:拖动只是准备好,按键才写入。移动滑块不会改变屏幕之外的任何东西,它只是说出所要求的那个值,而真正碰到现场,是操作员按下旁边那个发送按键的时候。一只袖子扫过触摸屏,最后和任何一次拖动一样以松手收场,所以“松手即写入”发出的恰恰是谁也没打算发出的那次手势。它属于控制类;新放置的一个占 6 × 1 个单元格。
这个控件自己不画任何读数;如果那个数字应该出现在屏幕上,就在行程旁边配一个数值。
数据
| 字段 | 作用 | 取值 | 默认 |
|---|---|---|---|
| 地址 | 设定值落进去、又被读回来的那个带根 Logic 地址:一个内部存储值变量,或者一个可写点位。列表收窄到可写点位。 | 自由文本;建议的是可写点位 | 空 |
格式
| 字段 | 作用 | 取值 | 默认 |
|---|---|---|---|
| 小数位 | 准备好的那个值和答复行写几位小数,这是这个控件写出数字的两个地方。留空则跟随工作站的小数偏好。超出区间的位数按边界取,面板会说明这一点。 | 0 到 15,或留空 | 空 |
行程
滑块可以走到哪里,可以停在哪里。两端是控件自己的声明,不是一个读数,正因如此,点位什么也不说的时候滑块照样能走。
| 字段 | 作用 | 取值 | 默认 |
|---|---|---|---|
| 最小值 | 行程从哪里开始。 | 任意有限数值 | 0 |
| 最大值 | 行程到哪里结束。等于或低于最小值就没有行程可走:面板会警告,滑块也会变成不可用,因为它什么也发不出去。 | 任意有限数值 | 100 |
| 步长 | 滑块移动的最小一步。它停下的每一个位置,都是从最小值算起整数个步长,所以发出去的值总是所声明的那些停点之一。步长除不尽整个行程是允许的,面板会说明最后一个停点落在哪里,那时最大值就不是这个滑块会发出的值了。 | 任意为正的有限数值 | 1 |
在限值环节已启用的点位上,行程的停点超出这些限值时,面板也会警告,并说出限值是多少:在限值之外准备好的值会在发送按键上被拒绝,而不是按边界取值。
它是怎么动作的
- 跟随现场。 什么都没准备好时,滑块站在点位自己的读数上。读数落在所声明的行程之外,或者根本没有良好的读数时,不画滑块:把滑块停在最小值上,等于画面自己编了一个设定值。
- 准备。 第一次触碰把滑块冻结在点位最后报出的位置上,并给控件上色,这就是在告诉操作员:现在是你握着它了。拖动会吸附到各个停点,并被限制在行程之内。准备好的那个值只属于这幅画面:它到不了任何别的回路,也没有任何东西会把它当作读数画出来。
- 发送按键在手指落下之前就说出它的后果:有值准备好时,它写着“设定 42.5”。发出去的值把滑块交还给点位;被出口拒绝的值仍然准备着,于是改正只是轻轻一推,不必把整个手势重来一遍。它的宽度从不改变:一开始就为行程能放到它上面的最宽的值留好了位置,所以准备一个值或把滑块交还给点位时,✕ 按键和行程都不会挪动。
- ✕ 按键把滑块松开、交还给点位,这是从一次谁也没打算的准备里退出来的路。它始终在这一行上(什么都没准备好时不可用),所以按键绝不会在手指底下挪位置。
- 对着读屏软件,滑块念出准备好的那个值(“42.5,尚未发出”)、点位自己的读数,或者“没有读数”,绝不会念出一个点位没有报出来的数字。
写入的含义
发送按键把准备好的那个值经由工作站唯一的逻辑出口写下去。放不下一个数的点位会在控件那一行上以拒绝作答;发送成功则答复“已写入 42.5”。一步一步走出来的值在发出之前会被清掉二进制残余,所以一个设定值绝不会以 0.30000000000000004 的样子到达现场。授权在按下的那一刻重新核对,答复行几秒之后过期。新放的滑块只有一行高,在角上标题下面,这一行很少还留得出答复的位置;这时答复在显示期间占用标题的位置。控件上面没有标题(没有写标题,或者标题让出了自己那一行)、格子里仍然放不下答复行时,答复占用发送按键上文字的位置;按键保持自己的宽度,所以 ✕ 按键和行程都不会移动(见仪表画面页面)。
在限值环节已启用的点位上,超出这些限值的已准备值也会以同样的方式被拒绝,理由会说出这些限值,并且保持准备状态:否则点位会按边界取值,而答复行会报出一个现场从未收到的值。
在存放整数的点位上(量程换算和校准都不改变数值的整数类型点位,或者存放整数的内部存储值变量),带小数的已准备值也会以同样的方式被拒绝,而不是被取整(“这个点位接受整数,因此不会写入 2.5。”),并且保持准备状态:在这样的点位上,带小数的步长会让那些停靠位置成为永远不会发出的值。
权限与锁
发送需要角色具备操作仪表画面的权限。锁着的时候,行程和发送按键都不可用,组件戴上共用的锁标记,理由在它的提示里(见仪表画面页面)。绑定的点位读不到时会戴上共用的读数异常标记,而控件本身仍然可用,因为设定值是一个绝对值,不需要先有读数。
共用的外观、标识、位置与图层、动作这几个分区,写在组件页面。