| 作者 | 主题 |
|---|---|
|
yashiro 游民 经验值:107 发帖数:69 精华帖:1 |
楼主
主题:如何在WinCC总中通过一个画面显示多台设备的状态
有40台设备,要显示的东西完全相同,想做一个标准的画面,通过按钮或其他手段切换是哪一台设备,不知道可行么?
记得以前好像看见过一个例子里面提过“通过画面窗口的变量前缀”好像可以实现,但是现在找不到了,请哪位大侠指教一下,多谢了 |
|
yashiro 游民 经验值:107 发帖数:69 精华帖:1 |
楼
主题:回复:如何在WinCC总中通过一个画面显示多台设备的状态
问题终于彻底解决,把解决过程贴出来,希望有对和我有同样困扰的朋友有帮助
PopUP :画面窗口名 PrefixWord :自建内部变量 SetpointScreen.pdl :画面窗口要显示的画面 SetpointScreenNULL.pdl :一个空画面 SetPictureName(lpszPictureName,"PopUP","SetpointScreenNULL.pdl"); SetTagWordWait("PrefixWord",23); SetPropChar(lpszPictureName,"PopUP","TagPrefix","INT"); SetPictureName(lpszPictureName,"PopUP","SetpointScreen.pdl"); SetVisible(lpszPictureName,"PopUP",TRUE); SetPictureName(lpszPictureName,"PopUP","SetpointScreenNULL.pdl"); SetTagWordWait("PrefixWord",24); SetPropChar(lpszPictureName,"PopUP","TagPrefix","REAL"); SetPictureName(lpszPictureName,"PopUP","SetpointScreen.pdl"); SetVisible(lpszPictureName,"PopUP",TRUE); 一开始做了两个按钮,一个PREFIXWORD=23,一个PREFIXWORD=24.画面窗口的变量前缀属性通过动态对话框连接PREFIXWORD:PREFIXWORD=23属性为"INT" PREFIXWORD=24属性为"REAL" 但是如果按过了按钮23,再按24,第一次不能切换,第二次能切换了. 怀疑是没有刷新,就自建了一个空画面,按钮脚本先让画面窗口显示空画面,改PREFIXWORD值,再让画面窗口显示正常画面,问题依旧. 此时想应该是变量更新了,但是画面窗口的属性还没有更新,画面已经装载. 所以又加了一句,直接更改画面窗口的属性,就一切正常了 分析:因为PREFIXWORD变量别的地方还又用,所以对其操作的语句没有删除,但是估计删除了不影响变量前缀切换的效果. |