如何发送鼠标点击? [英] How to send mouse click?

查看:179
本文介绍了如何发送鼠标点击?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要编写一个点击窗口的应用程序。



如何发送左键单击窗口所在的屏幕x / y坐标?

解决方案

使用 SendInput()函数:

  INPUT输入[3] = {0}; 

输入[0] .type = INPUT_MOUSE;
输入[0] .mi.dx = ...; //所需的X坐标
输入[0] .mi.dy = ...; //所需的Y坐标
输入[0] .mi.dwFlags = MOUSEEVENTF_ABSOLUTE | MOUSEEVENTF_MOVE;

输入[1] .type = INPUT_MOUSE;
输入[1] .mi.dwFlags = MOUSEEVENTF_LEFTDOWN;

输入[2] .type = INPUT_MOUSE;
输入[2] .mi.dwFlags = MOUSEEVENTF_LEFTUP;

SendInput(3,Inputs,sizeof(INPUT));

请务必阅读 MOUSEINPUT 文档如何指定 MOUSEEVENTF_ABSOLUTE 时,请正确使用 dy p>

I need to write an app that clicks on windows.

How can I send a left button click to some screen x/y coordinate where a window is located?

解决方案

Use the SendInput() function:

INPUT Inputs[3] = {0};

Inputs[0].type = INPUT_MOUSE;
Inputs[0].mi.dx = ...; // desired X coordinate
Inputs[0].mi.dy = ...; // desired Y coordinate
Inputs[0].mi.dwFlags = MOUSEEVENTF_ABSOLUTE | MOUSEEVENTF_MOVE;

Inputs[1].type = INPUT_MOUSE;
Inputs[1].mi.dwFlags = MOUSEEVENTF_LEFTDOWN;

Inputs[2].type = INPUT_MOUSE;
Inputs[2].mi.dwFlags = MOUSEEVENTF_LEFTUP;

SendInput(3, Inputs, sizeof(INPUT));

Be sure to read the comments in the MOUSEINPUT documentation regarding how to specify dx and dy correctly when using MOUSEEVENTF_ABSOLUTE in a multi-monitor environment.

这篇关于如何发送鼠标点击?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆