QQ登录

只需一步,快速开始

关于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;
}

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


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





回复

使用道具 举报

快速回复 返回列表 客服中心 搜索