VB操作wincc脚本心得
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Vbs 操作wincc画面脚本总结
一:不使用变量单纯的操作界面
1.操作某个画面中控件的属性如Home1.Pdl(总窗体)下的画面窗口2(画面窗口)
Sub OnClick(ByVal Item)
Dim objCircle
Dim screenname
Dim pwname
Set objCircle= ScreenItems("圆1" )
objCircle.Radius = 60
Set screenname=HMIRuntime.Screens("Home1") //获取要操作的窗体
Set pwname=screenname.ScreenItems("画面窗口2") //获取要操作的控件,这里填入你要操作的控件名
MsgBox(objCircle.Radius) //输出圆的半径
MsgBox (pwname.Picturename) //输出当前画面窗口2的名字
End Sub
注意当调用某窗体下的某控件的某个属性时,需要声明两个对象,一个接纳这个控件,一个接纳值例如
Dim object
Dim value
Set object =HMIRuntime.Screens("Home1").ScreenItems("画面窗口2")
Set value=object.picturename
2.更改画面窗口的对象
Sub OnClick(Byval Item)
Dim opObject
Set opObject=HMIRuntime.Screens ("Home1").ScreenItems("画面窗口2")
opObject.PictureName="Page1.Pdl"
End Sub
3.设置文本
Set titleTxt=HMIRuntime.Screens ("Home1").ScreenItems("静态文本2")
titleTxt.Text =titleTxt.Text+"EF" //获取文本的值并追加字符
4.vb 字符串函数
VB的字符串截取函数有Left(字符串,n),返回字符串前N个字符;Mid(字符串,p,n),从第p个字符开始,向后截取N个字符;right(字符串,n),返回字符串的最后n个字符。
获取下标
VB中的InStr()函数与InStrRev()函数:
都是在主字符串当中搜寻寻找子字符串,返回找到的子字符串在主字符串中出现的位置;不同在于;
InStr()函数,从左开始向右寻找,InStrRev()函数,从右开始向左寻找。
截取right 和left 获取长度Len
二:操作变量
1. Dim objTag
Dim AText
Set objTag = HMIRuntime.Tags("a") //获取变量
objTag.Read //执行读取
Set AText=ScreenItems("静态文本2") //获取控件
AText.Text=objTag.Value //给控件写入值
objTag.Value =100 //给目标变量写入值
objTag.Write //执行写入
2. vb 中Switch语句的变体
Dim objTag
Dim AText
Set objTag = HMIRuntime.Tags("a") //获取内部变量a的值
objTag.Read //必须要有这一步,这是读取操作,同理如果改写值必须要有ogjTag.write
Set AText=ScreenItems("静态文本2")
Select Case objTag.Value
Case 1
AText.Text="a"
Case 2
AText.Text="b"
Case Else
AText.Text=objTag.Value
End Select
三.弹出对话框
设置
buttons 参数可以有以下值:
常数值描述
vbOKOnly 0 只显示确定按钮。
vbOKCancel 1 显示确定和取消按钮。
vbAbortRetryIgnore 2 显示放弃、重试和忽略按钮。
vbYesNoCancel 3 显示是、否和取消按钮。
vbYesNo 4 显示是和否按钮。
vbRetryCancel 5 显示重试和取消按钮。
vbCritical 16 显示临界信息图标。
vbQuestion 32 显示警告查询图标。
vbExclamation 48 显示警告消息图标。
vbInformation 64 显示信息消息图标。
vbDefaultButton1 0 第一个按钮为默认按钮。
vbDefaultButton2 256 第二个按钮为默认按钮。
vbDefaultButton3 512 第三个按钮为默认按钮。
vbDefaultButton4 768 第四个按钮为默认按钮。
vbApplicationModal 0 应用程序模式:用户必须响应消息框才能继续在当前应用程序中工作。
vbSystemModal 4096 系统模式:在用户响应消息框前,所有应用程序都被挂起。
第一组值(0 - 5) 用于描述对话框中显示的按钮类型与数目;第二组值(16, 32, 48, 64) 用于描述图标的样式;第三组值(0, 256, 512) 用于确定默认按钮;而第四组值(0, 4096) 则决定消息框的样式。在将这些数字相加以生成buttons 参数值时,只能从每组值中取用一个数字。
返回值
MsgBox 函数有以下返回值:
常数值按钮
vbOK 1 确定
vbCancel 2 取消
vbAbort 3 放弃
vbRetry 4 重试
vbIgnore 5 忽略
vbYes 6 是
vbNo 7 否
下面的例子演示了MsgBox 函数的用法:
Dim MyVar
MyVar = MsgBox ("Hello World!", 65, "MsgBox Example")
' MyVar contains either 1 or 2, depending on which button is clicked.
你要求是有是和否两个按钮那么MyVar = MsgBox ("Hello World!", 65, "MsgBox Example")中的65改成4就可以了!
vbs脚本中:
if msgbox("确实要启动设备吗?",4,"警告")=6 then
hmiruntime.tags("tag1").write 1
end if