Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/270.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
有没有办法用c#捕捉桌面上的鼠标移动事件?_C# - Fatal编程技术网

有没有办法用c#捕捉桌面上的鼠标移动事件?

有没有办法用c#捕捉桌面上的鼠标移动事件?,c#,C#,我需要在鼠标指针每次移动时更新标签,但不仅仅是在表单中,我还需要在所有桌面中捕捉移动 可能吗 谢谢。您只需要标签上写着“鼠标移动”还是取决于鼠标移动的位置。我想无论哪种方式,你都可以使用一个计时器,它每隔一段时间就会关闭一次,检查鼠标的x和y位置,并将它们与以前的位置进行比较 prevMouseX = MouseX; prevMouseY = MouseY; mouseX = System.Windows.Forms.Cursor.Position.X; mouseY = System.Wind

我需要在鼠标指针每次移动时更新标签,但不仅仅是在表单中,我还需要在所有桌面中捕捉移动

可能吗


谢谢。

您只需要标签上写着“鼠标移动”还是取决于鼠标移动的位置。我想无论哪种方式,你都可以使用一个计时器,它每隔一段时间就会关闭一次,检查鼠标的x和y位置,并将它们与以前的位置进行比较

prevMouseX = MouseX;
prevMouseY = MouseY;
mouseX = System.Windows.Forms.Cursor.Position.X;
mouseY = System.Windows.Forms.Cursor.Position.Y;

然后比较是mouseX=prevMouseX等等。

您可能想看看鼠标捕获。我不确定您正在处理的所有情况,但请看一下鼠标捕获的概述。还提供了一些信息。

我会说是的,通过监视windows消息,但只是一个猜测提示。我认为这应该是可行的,但这不是正确的方法,但感谢您的建议