wincc中如何获取父级画面窗口的前缀

我有两个画面,在A画面有3个画面窗口PIc-A,PIc-B ,PIc-C,调用的同一个模板pump。
画面窗口PIc-A,PIc-B ,PIc-C,分别带有变量前缀P01.   P02.   P03.     。

模板pump中,设置一个按钮,就是把模板的内容,放大,放到画面B中,B中也放置了一个带变量前缀的画面窗口pic_template,且调用模板pic_template,,这个窗口的模板比上面的PUmp模板多了趋势图。
附件图片中的按钮VB,VC,是分别用VB和VC测试用的
现在我遇到的问题是:在按钮脚本中指定变量前缀的话,画面B中可以正常显示,但是想用获取A画面中3个窗口的变量前缀的方法,来实现想要的功能,但画面B的IO域就是不正常。
我想关键点应该就是获取父级画面窗口的前缀,就各位大神指点。谢谢
附现在的按钮脚本,是指定的变量前缀,是可以实现我要的功能的:
VB
Dim obj1
 HMIRuntime.BaseScreenName = "02_detail"
Set obj1=HMIRuntime.Screens("02_detail").ScreenItems("pic_template")
'obj1.PictureName = "02_TemplateHK"
obj1.TagPrefix = "HK2_P03."

VC
OpenPicture("02_detail.PDL"); //Return-Type: void 
SetPropChar("02_detail","pic_template","TagPrefix","HK2_P03."); 

因为我是A画面调用的同一个模板,所以指定变量前缀打开在B画面,是行不通的,只有想办法获取A画面中3个画面窗口的前缀。

问题补充:
给出的代码没有成功,从附件图片中得到了信息,成功取到了画面前缀。
我用的代码:
Dim mycircle
Set mycircle = ScreenItems("圆1")
MsgBox mycircle.Parent.Parent.TagPrefix

图片说明:

wincc中如何获取父级画面窗口的前缀    wincc中如何获取父级画面窗口的前缀    wincc中如何获取父级画面窗口的前缀    wincc中如何获取父级画面窗口的前缀   

最佳答案

在模板pump的按钮事件中:
Sub OnClick(Byval Item) 
Dim obj1

HMIRuntime.BaseScreenName = "02_detail"
Set obj1 = HMIRuntime.Screens("02_detail").ScreenItems("pic_template")

''HMIRuntime.Trace item.Parent.Parent.PictureName
obj1.TagPrefix = item.Parent.Parent.TagPrefix
End Sub

附件:画面层次关系图

图片说明:

wincc中如何获取父级画面窗口的前缀  

提问者对于答案的评价:
非常感谢。
给出的代码没有成功,从附件图片中得到了信息,成功取到了画面前缀。
我用的代码:
Dim mycircle
Set mycircle = ScreenItems("圆1")
MsgBox mycircle.Parent.Parent.TagPrefix

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc359566.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2021年7月5日 上午11:03
下一篇 2021年7月5日 上午11:03

相关推荐

  • 在线急

    我是win7 64位的系统在安装wincc v7.4时说SQL Server 2014不能安装,我之前装了step7,请问大佬这个怎么解决?…

    SIMATIC WinCC 2021年7月5日
  • WINCC 冗余服务器取消出错

    之前没做过冗余项目,现在按照官网说明组态好下载运行两个服务器,退出其中一个runtime后,退出另一个runtime,显示存在冗余错误,详见截图,这是正确的吗?如果不正确,该从哪里…

    2017年12月2日
  • 退出WINCC操作画面时弹出对话框要求输入用户名和密码

    我在WINCC中屏蔽了所有的退出热键,我在操作画面中添加了一个按钮,在该按钮上添加了一个退出WINCC的动态向导,可以正常的退出WINCC,但这不是我要的效果,因为这样一来不论是操…

    SIMATIC WinCC 2019年6月11日
  • 查询ACESS数据

    通过那种方式可以对本地的ACESS数据进行查询,使用哪种控件?listview?mshflexgrid?  能否给出相关详细程序说明或者例子 &nbs…

    SIMATIC WinCC 2019年6月11日
  • 如何组态离散量报警 如PLC输入I0.0置位画面报警视图有显示信息

    如何组态离散量报警 如PLC输入I0.0置位画面报警视图有显示信息 最佳答案 在WinCC  flexible的“离散量报警”里可以设定。先建一个变量…

    SIMATIC WinCC 2019年6月11日
  • WINCC与家用摄象头通迅

    在WINCC中能调出可执行文件,可我并不会用现在就举一个例子:我家有一个摄象头,安装好驱动好能对着自己照相,我在摄象头前动作,在电脑中也能实时显示。那么,我想将这段嵌入WINCC中…

    SIMATIC WinCC 2019年6月11日
  • wincc flexible如何设置I/O域的上下限

    还有一个疑问就是怎么能给一个I/O域做成超出上限红灯亮,超出下限黄灯亮呢 最佳答案 在I/O域所连接的变量中设置上限下限值,然后在I/O域的限制属性中设置超出上限以及超出下限的颜色…

    2017年6月1日
  • WINCC 7.4通过工业以太网连接S7-300的数量限制?

    WINCC 7.4通过工业以太网连接S7-300的数量限制是多少呢?有大约60套S7-300还有9套AB的1756需要进行以太网连接,不知道wincc最大连接数量限制,看…

    2020年11月1日
  • WINCC 7.4 SP1与485接口的无纸记录仪通讯

    上位机的电脑没有串口,想通过网口转485的硬件模块(已有一个TCP转485的模块)去读现场一个无纸记录仪的数据,本来是想用MODBUS TCP通讯驱动来读这个设备,但后来…

    SIMATIC WinCC 2021年7月5日
  • 关于Faceplate

    主要是想问问关于它的学习资料在哪里找。以前从来没有用过这个,请问我要学习这个应该从哪里入手,wincc手册里面并没有介绍啊 而且,请问这个是不是就是在wincc下操作,需…

    SIMATIC WinCC 2019年6月11日

发表回复

登录后才能评论