本文介绍了Windows系统中有关实现对鼠标和光标进行操作的API函数,并给出了在Visual C6.0 中利用所介绍的API函数实现对鼠标和光标的操作的代码。
四、设置鼠标双击时间
函数:BOOL SetDoubleClickTime ( UINT uInterval );
参数uInterval,表示鼠标双击时间,为毫秒级,系统默认时间为500;返回值为布尔值。
实例:在窗口中放置一个Button,名称为SetDoubleClickTime。
源程序为:
//设置鼠标的双击的时间
void CmyTestDlg::OnSetDoubleClickTime()
{
Bool T;
T=SetDoubleClickTime(500);
If(T)
MessageBox("成功的设置了鼠标双击时间!");
}
运行程序,单击BtnSetDoubleClickTime,鼠标双击时间已改变。
五、将鼠标锁定在一定范围
函数:BOOL ClipCursor ( CONST RECT *lpRect );
参数*lpRect,指向鼠标活动矩形区域的指针;返回值为布尔型,表示锁定成功与否。
实例:在窗口中放置两个Button,名称为LockMouse和UnLockMouse。
源程序为:
//将鼠标锁定在固定区域
void CmyTestDlg::OnLockMouse()
{
RECT Rect;
BOOL bLock;
Rect.left=10;//设置锁定区域大小;
Rect.top=10;
Rect.right=200;
Rect.bottom=200;
bLock:=ClipCursor(&Rect); // 限制鼠标移动区域
if (block)
MessageBox("鼠标固定在指定区域!");
}
将鼠标锁定解锁,其实质是将鼠标锁定在整个屏幕区
void CmyTestDlg::OnLockMouse()
{
RECT Rect;
BOOL bLock;
Rect.left=0;//设置锁定区域大小;
Rect.top=0;
Rect.right=600;
Rect.bottom=800;
Block=ClipCursor(&Rect);
if (block)
MessageBox("鼠标固定在屏幕区域!");
}
运行程序,单击LockMouse,此时鼠标锁定在固定区域中;再单击UnLockMouse键鼠标锁定解锁。当然还可以采用别的方法将鼠标来解锁,如将鼠标锁定在某一个窗口来对鼠标解锁。
总之,API函数的功能强大,我们可以在多种快速开发工具中使用它,以增强我们程序的功能。以上程序在Windows2000、Visual C++ 6.0中调试通过。
查看本文来源