龙空技术网

利用VBS脚本修改wincc画面弹窗的一种方式

机电工控人生交流 1067

前言:

眼前各位老铁们对“vbs绘制界面”可能比较讲究,兄弟们都想要分析一些“vbs绘制界面”的相关资讯。那么小编也在网络上网罗了一些有关“vbs绘制界面””的相关资讯,希望朋友们能喜欢,看官们一起来学习一下吧!

序言

在设计wincc组态画面的时候,为了减少画面窗口及减少主画面的拥挤,设计的时候我们常常采用弹出画面(弹窗)的方式。因弹窗如果不定位,那么就会造成弹窗画面的不固定性,从而造成操作的不方便。

解决方案

弹窗方式一的特点: 窗体大小可控,弹窗的位置在按钮旁边(跟随鼠标)。

弹窗方式二的特点:弹窗随意。

实现方式:

(1)建立变量

(2)建立画面窗口

(3)建立VBS脚本

(4)以前的脚本

Dim open

Dim username

Set username = HMIRuntime.Tags("@CurrentUserName")

username.Read

If username.Value="admin" Then

Set open =Screens("画面窗口1")

open.ScreenName="TEST001_水泵控制"

open.TagPrefix ="P101A"

open.Visible=True

open.left =495

open.top=425

Else

Msgbox "当前登录用户无操作权限",64,"用户登录"

End If

===当前的脚本====

Sub OnLButtonDown(ByVal Item, ByVal Flags, ByVal x, ByVal y)

Dim open

Dim username

Set username = HMIRuntime.Tags("@CurrentUserName")

username.Read

If username.Value="Admin" Then

Set open = ScreenItems("画面窗口1")

open.ScreenName="TEST001_水泵控制"

open.TagPrefix ="P101A"

open.Visible=True

open.CaptionText="P101A界面"

OPEN.WindowCloseEnabled=True

If((x+open.Width) > item.Parent.Width)Then '判断鼠标x坐标是否超限

open.Left = item.Parent.Width - open.Width

Else

open.Left = x

End If

If((y+open.Height) > item.Parent.Height)Then '判断鼠标y坐标是否超限

open.top = item.Parent.Height - open.Height

Else

open.top = y

End If

open.width =310

open.height=210

Else

Msgbox "当前登录用户无操作权限",64,"用户登录"

End If

End Sub

标签: #vbs绘制界面