描述:
图形对象的“动态填充”属性只允许从底部到顶部填充对象。本条目描述了如何动态化一个矩形,以达到棒图从右到左增长的效果。对象的大小和位置也可以通过同样的方法实现动态化。n
注意:
尽量使用智能对象 "bar" 代替图形对象 "rectangle"。
棒图对象的好处在于:n
- 动态化和方向无关。n
- 无需脚本,变量可以直接连接,棒图是可以根据比列放大缩小。n
- 棒图可以在图形编辑器中移动,而不会改变动态属性。
在WinCC实例中有以下对象被引用:
描述 | 对象名称 | 属性 |
填充变量 | "Level" | 无符号8位数值, 下限: 0, 上限: 100 |
边界矩形 | "Border" | 几何: X=19, Y=39, 宽度=402, 高度=32 |
填充矩形 | "LevelRect" | 几何: X=20, Y=40, 宽度=400, 高度=30 颜色: 线颜色 =背景颜色 |
n
注意:
对所有的动态都使用变量触发:
- 变量: "Level"n
- 更新: "一旦改变"
选择1:动态值的范围
为下面的填充矩形设置动态效果。n
图 01n
- 位置X: 公式: 420 - (400/100 * 'Level')n
- 宽度: 公式: 400/100 * 'Level'
图 02: 动态位置X
选择2:用C脚本作动态化
编号 | 描述: |
1 | 属性"位置 X"的C脚本 n
#include "apdefap.h" |
2 | 属性"宽度"的C脚本
#include "apdefap.h" |
选择3: 用VB脚本作动态化
编号 | 描述: |
1 | 属性"位置 X"的VB脚本
Function Left_Trigger(Byval Item) |
2 | 属性"宽度"的VB脚本
Function Width_Trigger(Byval Item) |
结果:
图 03
原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc332756.html