搬家第三天-42.Wincc V7.3 自定义控件制作(1)-制作介质流动效果管道控件

有时候用户希望HMI能够漂亮一点,动态化一点,依靠西门子自带的工厂控件库不一定能够完全满足用户需求,此时我们需要自己制作控件,或者从网络上下载使用第三方控件。此文以制作介质流动效果管道为例,介绍了如何生成通用动态效果,如何加入控件库,如何在其他项目中引用自己做的控件。

第一步:在Wincc页面上画两个矩形,名字分别为pipe1和pipe2,pipe1和pipe2高度一致,pipe2宽度比pipe1稍微大一点。二者均取消全局颜色方案,样式-填充图案选择7#(从中轴线向管壁颜色渐变),颜色-填充颜色方案选灰色(可以根据需要改成其他颜色),pipe1可见,pipe2不可见。pipe1和pipe2左对齐。全选pipe1和pipe2,右键-创建自定义对象,将pipe1和pipe2控件的left属性和width属性拖拽到自定义对象几何属性集当中,pipe1的left属性命名为left1,width属性命名为width1;pipe2的left属性命名为left2,width命名为width2,然后确定。

第二步:选中刚才生成的控件,在几何属性中找到pipe1的left属性位置x1,右键添加VBS脚本如下,触发器设为500ms(可以修改数值):

Function Left1_Trigger(ByVal Item)
Dim i,j,k
j=item.width2-item.width1
k=item.left
item.left1=item.left1+j/3
i=item.left2+item.width2
If item.left1+item.width1>=i Then
   item.left1=k
End If

End Function

这里面要注意不能引用自定义控件的控件名,而要引用Item,left1、left2、width1和width2分别是pipe1和pipe2的x轴位置和宽度。

 

第三步:保存脚本后在页面下方点击库选项卡,依次展开全局库-Siemens HMI Symbol Library 1.4.1-管(杂项),然后把页面中的自定义控件拖拽进来,重命名为“介质流动管道”。以后在其他项目中就可以引用这个控件了。

 

第四步:在一个项目中打开一个页面,在下方点击库选项卡,依次展开全局库-Siemens HMI Symbol Library 1.4.1-管(杂项),找到介质流动管道”,拖拽到页面中,复制粘贴若干次,把这些控件首位相连起来做成一个直管道的样子,保存之后运行起来就能看到“流动”的效果。需要注意的是,一个页面如果这样的动画效果的控件太多,实际上是很占资源的,运行时会有卡顿的感觉,实际项目中还是不推荐这样花哨的东西,精力还是要放在主要功能上。

posted @ 2021-01-31 08:08  来自金沙江的小鱼  阅读(2602)  评论(0编辑  收藏  举报