110,538
社区成员
发帖
与我相关
我的任务
分享
/// <summary>
/// 后台发送鼠标POST
/// </summary>
/// <param name="hWnd"></param>
/// <param name="x"></param>
/// <param name="y"></param>
public static void LeftClickBackP(int hWnd, int x, int y)
{
const uint downCode = 0x201; // Left click down code
const uint upCode = 0x202; // Left click up code
PostMessage((IntPtr)hWnd, downCode | upCode, 1, MakeLParam(x, y)); // Mouse button down
//Thread.Sleep(100);
PostMessage((IntPtr)hWnd, downCode, 1, MakeLParam(x, y)); // Mouse button down
Thread.Sleep(100);
PostMessage((IntPtr)hWnd, upCode, 1, MakeLParam(x, y)); // Mouse button up
Thread.Sleep(100);
}
因为拖拽的窗体需要先被激活
然后才能执行点击操作
所以第一个鼠标按下是执行了窗体激活
第二个才是按下
第三个是松开