技术论坛

 鼠标、键盘可以同时捕捉的功能实现!

返回主题列表
作者 主题
沉默是金
游士

经验值:258
发帖数:155
精华帖:5
楼主    2005-06-01 21:09:15
主题:扑捉鼠标位置的功能,实现画面自动返回!望斑竹置精!!!!!!!!
BOOL GetMousePoint()
{
#pragram code("user32.dll");
BOOL GetCursorpos(LPPOINT lppoint);
#pragma code();
POINT point;
static int x, y;
GetCursorPos(&point);
if(x!=point.xy!=point.y)
{
x=point.x;
y=point.y;
return FALSE;
}
else
return TRUE;
}
*******************************************
此功能调用了WINDOWS的API函数获取鼠标(屏幕)位置。
例如:要求在鼠标10秒静止不动,将从任意画面返回到主画面A。
可在全局脚本中调用GetMousePoint();
如果返回值为真,OpenPicture("A画面");即可。
全局脚本触发时间定义为鼠标秒静止不动的时间,在此为10秒。
*************************************************************
*************************************************************
比每个页面、控件都做定时触发好吧!
糊口饭吃
沉默是金
游士

经验值:258
发帖数:155
精华帖:5
    2005-06-02 13:47:06
精华帖  主题:鼠标、键盘可以同时捕捉的功能实现!
#include "user.h" //自定义的头文件,包含LASTINPUTINFO结构定义;
#pragma "user32.dll";
BOOL GetLastInputInfo(PLASTINPUTINFO plii);//2000系统专有。
#pragma code();
BOOL GetMouseKeyStaticTime()
{
static long oldtime;
LASTINPUTINFO tim;
tim.cbSize=sizeof(LASTINPUTINFO);
GetLastInputInfo(&tim);
if(oldtime==tim.dwTime)
return TRUE;
else
{
oldtime=tim.dwTime;
return FALSE;
}
}
////////////////////////////////////////////////////////
使用方法:
在全局脚本中调用此功能函数,判断返回真值(说明鼠标、键盘均没动作),
就调用打开主画面的函数OpenPicture("A画面");即可。
全局脚本触发时间定义为所需时间。
*********************************************************
***********************************************************
以上两种功能函数均在WINCC5.1 SP2,WINDOWS2000环境调试成功。
因为调用的是操作系统函数,所以相信在WINCC其他版本也能够实现。
糊口饭吃
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。