WINCCV7.5SP2输入输出域二次确认实现方法

标签:
西门子wincc输入输出域二次确认 |
分类: 西门子软硬件 |
QQ群里面有个哥们询问如何在输入输出域输入数据后二次确认,输入输出域是在弹出窗口里面的。我测试了一下,可以实现,有段时间没有用WINCC了,有点手生。
新建一个wincc项目,新建4个变量
模拟有两个弹出窗口
新建主画面main作为起始画面
画面窗口控件属性如下:
新建两个小画面,300*300,P1小画面如下
输入输出域属性如下
该输入输出域的键盘弹起事件VBS脚本如下
Sub OnKeyUp(ByVal Item, ByVal nChar,
Byval nRepCnt, ByVal nFlags)
Dim tmp,temp,inputvalue
Set
temp=HMIRuntime.Tags("P1_TEMP")
Set
inputvalue=HMIRuntime.Tags("P1_INPUT")
If nChar=13 Then
tmp=Msgbox("你确定要这样?",1,"这里是标题")
'显示“确定”和“取消”按钮,默认第一个按钮
If tmp=1 Then
'选择了“确定”按钮
temp.Write
inputvalue.Read
Else
inputvalue.Write temp.Read
End If
End If
End Sub
同理设置P2小画面,关联P2_INPUT和P2_TEMP两个变量,设置脚本
主画面上“弹窗修改P1_INPUT”按钮的鼠标点击脚本如下:
Sub OnClick(ByVal
Item)
Dim PW,temp,inputvalue
Set PW=ScreenItems("PW")
Set
temp=hmiruntime.Tags("P1_TEMP")
Set
inputvalue=hmiruntime.Tags("P1_INPUT")
PW.Visible=False
PW.CaptionText="P1输入数据"
PW.PictureName="P1"
PW.Visible=True
TEMP.Write inputvalue.read
End Sub
主画面上“弹窗修改P2_INPUT”按钮的鼠标点击脚本如下:
Sub OnClick(ByVal
Item)
Dim PW,temp,inputvalue
Set PW=ScreenItems("PW")
Set
temp=hmiruntime.Tags("P2_TEMP")
Set
inputvalue=hmiruntime.Tags("P2_INPUT")
PW.Visible=False
PW.CaptionText="P2输入数据"
PW.PictureName="P2"
PW.Visible=True
TEMP.Write inputvalue.read
End Sub
保存、运行,点击主画面的按钮,弹出画面窗口,画面窗口输入数据按下回车键,会询问是不是要修改,选择确定,修改数值,选择取消,不修改数值。
我把例子程序传到了网盘,地址
链接:https://pan.baidu.com/s/1-Ru7SKfG3jPoYDwTTtSoQg
提取码:1234