我知道如何从MSDN上的示例修改光标位置。如何跟踪鼠标X/Y位置并将其打印到标签?
我的问题是如何检查鼠标移动时的位置,然后打印X和Y位置来表示标签?
编辑:可以说我想从我的整个屏幕上跟踪我的鼠标位置。编辑2:我的应用程序将在后台/最小化。
我已经使用鼠标钩子:
namespace Program
{
public partial class MouseHook
{
[DllImport("user32.dll", CharSet = CharSet.Auto, CallingConvention = CallingConvention.StdCall)]
private static extern void mouse_event(int dwFlags, int dx, int dy, int dwData, IntPtr dwExtraInfo);
private const int MOUSEEVENTF_LEFTDOWN = 0x02;
private const int MOUSEEVENTF_LEFTUP = 0x04;
private const int MOUSEEVENTF_RIGHTDOWN = 0x08;
private const int MOUSEEVENTF_RIGHTUP = 0x10;
public void DoMouseClick()
{
int X = Cursor.Position.X;
int Y = Cursor.Position.Y;
IntPtr newP = new IntPtr(Convert.ToInt64("0", 16));
mouse_event(MOUSEEVENTF_LEFTDOWN | MOUSEEVENTF_LEFTUP, X, Y, 0, newP);
}
}
}
这已问过很多次了。在搜索框中输入“+ setwindowshookex + wh_mouse_ll”。或者只是使用50毫秒的定时器和光标。位置 – 2012-01-15 17:38:23
@Hans Passant,定时器解决方案似乎是检查x/y位置最简单的方法。我只需要弄清楚如何检查现在的位置。 +1为此:) – HelpNeeder 2012-01-15 17:41:09
@Cody Gray,如果问题在注释答案前3年发布,这个问题如何重复? – HelpNeeder 2017-04-30 18:32:59