VC6.0 将鼠标限定在客户区域内

来源:互联网 发布:网络语言橘子什么意思 编辑:程序博客网 时间:2024/05/21 11:19
SetCapture(); //捕捉鼠标
CRect rect;
GetWindowRect(&rect);//获取客户区窗口区域

ClipCursor(&rect);//将鼠标的活动区域限制在客户窗口


ReleaseCapture();//释放鼠标
CRect rect;
GetDesktopWindow()->GetWindowRect(&rect);
ClipCursor(&rect);//恢复鼠标的活动区域

防止鼠标按下拖出客户区

void CMapPlusView::OnLButtonDown(UINT nFlags, CPoint point) 
{
SetCapture(); //捕捉鼠标
CRect rect;
GetWindowRect(&rect);//获取客户区窗口区域

ClipCursor(&rect);//将鼠标的活动区域限制在客户窗口

...

}

void CMapPlusView::OnLButtonUp(UINT nFlags, CPoint point) 
{
ReleaseCapture();//释放鼠标
CRect rect;
GetDesktopWindow()->GetWindowRect(&rect);
ClipCursor(&rect);//恢复鼠标的活动区域

...

}

原创粉丝点击