工控编程吧

标题: 关于WinCC6.0焦点改变问题 [打印本页]

作者: baikhgmv    时间: 2016-9-7 11:35
标题: 关于WinCC6.0焦点改变问题
关于WinCC6.0焦点改变问题

用户需要增加一个 长时间没有鼠标动作就停机  的功能,以达到节能的目的,

请问可以通过WinCC上的焦点改变给一个变量置一吗?具体怎么做呢?


-----新建3个内部32位浮点数变量:x,y,Timer分别记录鼠标坐标和计数器,新建一个全局C脚本,触发器1秒,假设10秒之后没有鼠标操作就关机,全局脚本如下:

#include "apdefap.h"

int gscAction( void )
{
// WINCC:TAGNAME_SECTION_START
// syntax: #define TagNameInAction "DMTagName"
// next TagID : 1
// WINCC:TAGNAME_SECTION_END

// WINCCICNAME_SECTION_START
// syntax: #define PicNameInAction "ictureName"
// next PicID : 1
// WINCCICNAME_SECTION_END
POINT myPoint;
double timer;
GetCursorPos(&myPoint);
timer=GetTagDouble("Timer");
if((GetTagDouble("x")!=myPoint.x)||(GetTagDouble("y")!=myPoint.y))
{
SetTagDouble("x",myPoint.x);
SetTagDouble("y",myPoint.y);

SetTagDouble("Timer",0);}
else
{
SetTagDouble("Timer",timer+1);
if (GetTagDouble("Timer")==10)
DMExitWinCCEx (DM_SDMODE_POWEROFF);
}
return 0;
}

在计算机属性启动项目中,勾选全局脚本,运行后就可以实现你需要的效果了。


------谢谢大神,脚本还不会,我私下学习学习!










欢迎光临 工控编程吧 (https://www.gkbc8.com/) Powered by Discuz! X3.4