【发布时间】:2011-04-27 01:04:36
【问题描述】:
我需要冻结屏幕上的 Windows 鼠标光标,使其保持悬停在特定 UI 元素上。当鼠标处于这种冻结状态时,我仍然希望能够使用“假”鼠标指针与 UI 进行交互。
目前,我有一个低级鼠标钩子,可以防止 WM_MOUSEMOVE 消息被传递,有效地阻止所有真正的鼠标移动。但是,当我不传递更新后的坐标时,Windows 实际上会在单独的 WM_MOUSEMOVE 消息中向我发送旧坐标,好像是为了纠正鼠标没有移动的事实。
关于如何防止 Windows 向我发送这些更正的坐标,或者如何冻结实际鼠标光标并仍然允许物理鼠标控制“假”光标的另一种方法?
【问题讨论】:
-
当你写完这个最有用的应用程序后,请给我一份!开个玩笑,我相信你有充分的理由想要这样做。
-
如果您不传递它们,您可以忽略它们吗? (Piskvor 提醒自己永远不要买任何东西,因为他可能会沮丧地弄坏鼠标)。另外,您可以通过 SendMessage() 进行其他交互吗?不确定这是否是一种更好的毒药,但至少鼠标仍然可控。
-
当然这听起来是个可怕的想法,相信我我知道。但这样做的原因是我想将鼠标冻结在一个 html 元素上(例如,一个弹出的 javascript 菜单),但此时能够检查 dom。
-
没有任何理由可以证明这个可怕的想法。还有其他方法可以指示选择。例如,使用一种颜色。查看 Firefox 的 Firebug 插件以获取灵感。