来自西门子技术支持热线的故事:画面窗口中对象属性修改的问题

已锁定

西门子Lemon

官方工程师

  • 帖子

    128
  • 精华

    9
  • 被关注

    152

论坛等级:侠客

注册时间:2010-03-19

普通 普通 如何晋级?

来自西门子技术支持热线的故事:画面窗口中对象属性修改的问题

2228

5

2012-07-31 16:52:03

近日遇到一个 WinCC 画面窗口的问题,客户称被其弄晕了。怎么访问指定画面中的对象?有没有简单的方法?对此,总结了如下关于画面窗口中对象的访问示例,以期说明画面窗口的简单使用方法。
如下图所示,在画面 start 中有两个画面窗口 picwin1 和 picwin2,它们都关联到 NewPdl0 画面上。在 NewPdl0 中放置了一个矩形对象 Rectangle1。



如果要在start画面中单击按钮“set color”来修改picwin1或者picwin2中的 NewPdl0 中的矩形框Rectangle1的属性,那么该怎么写脚本?
正确的写法是:
访问 picwin1 中的 NewPdl0 中的 Rectangle1 的代码为:
SetPropWord("start.picwin1:NewPdl0","Rectangle1","BackColor",1000);
访问 picwin2 中的 NewPdl0 中的 Rectangle1 的代码为:
SetPropWord("start.picwin2:NewPdl0","Rectangle1","BackColor",1000);
如果直接写 SetPropWord("NewPdl0","Rectangle1","BackColor",1000);,结果会怎样呢?
结果是仅 picwin1 中的 NewPdl0 中的 Rectangle1 的属性被修改了,而 picwin2 中的 NewPdl0 中的 Rectangle1 的属性是不会被修改的。
所以,要修改画面窗口中的对象的属性值时,必须先确定对象所在画面的名称。



如上图所示,是画面窗口的多重嵌套示例。NewPdl0 中有一个画面窗口 PicWin1,PicWin1 关联画面NewPdl1,NewPdl1 中有一个画面窗口 PicWin2,PicWin2 关联到画面 NewPdl2。如果想设置 NewPdl2 中的对象属性时,必须使用画面名称:NewPdl0.PicWin1:NewPdl1.PicWin2:NewPdl2。
来自西门子技术支持热线的故事:画面窗口中对象属性修改的问题 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC WinCC / Panel

共有31150条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。