Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
什么';在Windows上跟踪鼠标光标位置的最有效方法是什么?_Windows_Cursor Position - Fatal编程技术网

什么';在Windows上跟踪鼠标光标位置的最有效方法是什么?

什么';在Windows上跟踪鼠标光标位置的最有效方法是什么?,windows,cursor-position,Windows,Cursor Position,在MacOSX的Cocoa框架中,有跟踪矩形,它有效地允许您注册视图的一个区域,并在鼠标进入或离开时获取回调消息 Windows中是否有类似的API?我希望避免使用计时器每隔x个间隔调用GetCursorPos() 这可能是因为它们的名称完全不同,而且很琐碎,但到目前为止我还没有找到任何东西。,当鼠标离开窗口时,这将向您发送WM\u MOUSELEAVE消息,如果鼠标有一段时间没有移动,还会向您发送悬停通知 如果你想要一个比你的窗口小的跟踪矩形,你必须自己做。,当鼠标离开你的窗口时,这会给你发送

在MacOSX的Cocoa框架中,有跟踪矩形,它有效地允许您注册视图的一个区域,并在鼠标进入或离开时获取回调消息

Windows中是否有类似的API?我希望避免使用计时器每隔x个间隔调用GetCursorPos()

这可能是因为它们的名称完全不同,而且很琐碎,但到目前为止我还没有找到任何东西。

,当鼠标离开窗口时,这将向您发送
WM\u MOUSELEAVE
消息,如果鼠标有一段时间没有移动,还会向您发送悬停通知

如果你想要一个比你的窗口小的跟踪矩形,你必须自己做。

,当鼠标离开你的窗口时,这会给你发送一条
WM\u MOUSELEAVE
消息,如果鼠标有一段时间不动,也会发送悬停通知


如果希望跟踪矩形比窗口小,你必须自己去做。

在你的窗口中捕捉。

在你的窗口中捕捉。

你可以安装鼠标钩子来捕捉鼠标事件。

你可以安装鼠标钩子来捕捉鼠标事件。

只有当我没有像按钮一样将鼠标放在子控件上时,才会显示此消息。@Drarok:你可能会捕捉到消息循环中的消息,而不是分派消息。在这里,您可以转换坐标或调用GetCursorPos()。这样,您就不需要对所有窗口进行子类化。只有当我没有将鼠标放在子控件(如按钮)上时,才会显示此消息。@Drarok:您可能会在消息循环中捕获消息,而不会发送消息。在这里,您可以转换坐标或调用GetCursorPos()。这样,您就不需要对所有窗口进行子类化。