鼠标锁定在一个区域的问题

vercity 2010-01-27 04:04:22
我想写一个程序 想实现的是: 我打开一个游戏 比如扫雷,然后我打开自己写的程序,得到扫雷程序的句柄,从而得到rect,把鼠标锁定在这个rect区域里面,再切换到扫雷,鼠标依旧锁定在这个区域里。
现在的问题是 我点了锁定按钮 鼠标是锁定了 但是我要切换到扫雷时 锁定就自动解除了 怎样才能让我锁定好之后 切换到扫雷这个进程 鼠标还是只能在锁定的那个区域之内?
...全文
1087 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
csyounth 2012-04-12
  • 打赏
  • 举报
回复
这种和钩子哪个效率高?
red-fly 2010-01-28
  • 打赏
  • 举报
回复
麻烦的事情
为什么要这样实现?
maple_zhj 2010-01-28
  • 打赏
  • 举报
回复
只能用 系统底层 鼠标钩子,

我很确定!!! wH_Mouse_LL
vercity 2010-01-27
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 sjdev 的回复:]
汗,你这样问起来就多了。

用钩子吧。
[/Quote]
嗯。。之前也看过了。。试试。。
ls2141 2010-01-27
  • 打赏
  • 举报
回复
呵呵 。帮顶
sjdev 2010-01-27
  • 打赏
  • 举报
回复
汗,你这样问起来就多了。

用钩子吧。
vercity 2010-01-27
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 sjdev 的回复:]
我的意思是,在功能函数中SetCapture,ClipCursor,响应鼠标单击消息,在消息处理中SetCapture,ClipCursor
[/Quote]
一开始Alt+Tab换到扫雷的时候 就已经失效了 这个用什么方法响应?
sjdev 2010-01-27
  • 打赏
  • 举报
回复
我的意思是,在功能函数中SetCapture,ClipCursor,响应鼠标单击消息,在消息处理中SetCapture,ClipCursor
vercity 2010-01-27
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 sjdev 的回复:]
鼠标出了你的程序窗口之后

你得SetCapture鼠标
[/Quote]

我在扫雷那里点击了一下 还是会失效。。。
c_s0001 2010-01-27
  • 打赏
  • 举报
回复
控制鼠标活动范围
a) 得到鼠标的活动范围
::GetClipCursor(
LPRECT lpRect // screen coordinates
);
b) 限制鼠标的活动范围
::ClipCursor(
CONST RECT *lpRect // screen coordinates
);
::ClipCursor()函数将鼠标限制在屏幕上的一个矩形区域内。
如果鼠的下一个位置超出了这个矩形区域,则系统自动调整鼠标位置在这个矩形区域之内。
说明:矩形区域为左上角和右下角为屏幕坐标的矩形
如果lpRect为NULL,则鼠标在屏幕上自由移动。
对于工作站,调用进程必须可访问WINSTA_WRITEATTRIBUTES
鼠标是一个共享资源,鼠标只能有一个存在。
若一个应用程序限制了鼠标,则必须在其它应用程序使用鼠标之前,通过::ClipCursor(NULL)函数来放弃对鼠标的控制。
sjdev 2010-01-27
  • 打赏
  • 举报
回复
鼠标出了你的程序窗口之后

你得SetCapture鼠标
vercity 2010-01-27
  • 打赏
  • 举报
回复
RECT rect;
::GetWindowRect(hNew,&rect);
ClipCursor(&rect);
就是用的这个 但是切换到扫雷的时候就自动解除锁定了
sjdev 2010-01-27
  • 打赏
  • 举报
回复
ClipCursor?

16,467

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧