QT模拟鼠标移动到指定的坐标点

void MouseMove(int x, int y)//鼠标移动到指定位置
{    
    double fScreenWidth = ::GetSystemMetrics(SM_CXSCREEN) - 1;//获取屏幕分辨率宽度
    double fScreenHeight = ::GetSystemMetrics(SM_CYSCREEN) - 1;//获取屏幕分辨率高度
    printf("%f\n", fScreenWidth);
    printf("%f\n", fScreenHeight);

    double fx = x * (65535.0f / fScreenWidth);
    double fy = y * (65535.0f / fScreenHeight);
    INPUT  Input = { 0 };
    Input.type = INPUT_MOUSE;
    Input.mi.dwFlags = MOUSEEVENTF_MOVE | MOUSEEVENTF_ABSOLUTE;
    Input.mi.dx = fx;
    Input.mi.dy = fy;
    SendInput(1, &Input, sizeof(INPUT));
}

 


版权声明:本文为qq_38410147原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。