现在出差报警时 在wincc 画面上弹出一个类似于确认窗口,在全局动作中写的脚本如下,但不执行,请帮忙看看是什么问题
#include "apdefap.h"
int gscAction( void )
{
BOOL b;
b=GetTagBit("WSCL/Aut_Man");
if(b==1)
MessageBox(NULL,"请确认报警?","提示息",MB_ICONINFORMATION|MB_OKCANCEL);
else
MessageBox(NULL,"报警取消?","提示信息",MB_OK);
// WINCC:TAGNAME_SECTION_START
// syntax: #define TagNameInAction "DMTagName"
// next TagID : 1
// WINCC:TAGNAME_SECTION_END
// WINCC:PICNAME_SECTION_START
// syntax: #define PicNameInAction "PictureName"
// next PicID : 1
// WINCC:PICNAME_SECTION_END
return 0;
}
最佳答案
1.把报警空间放到画面窗口控件里面,然后显示用变量触发。
可以使用OS项目编辑器+画面树,做成PCS7风格,可以完全具备你说的功能。http://www.ad.siemens.com.cn/productportal/prods/hmi/wincc/q3_configuration/list_q3.html
2.尝试一下下面的脚本试试
A=GetTagBit("a");
B=GetTagBit("b");
if(A^B)&A
messagbox(NULL,"报警弹出","提示信息",MB_OK);
SetTagBit("b",A);
提问者对于答案的评价:
没错 是可以用变量来触发 弹出报警画面窗口,但假设一副画面中有好几十个报警变量,那么做在脚本中的变量是否会很多?
最佳答案作者回复:
变量是很多,但是这样做的话会稳定点,个人建议
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc316617.html