加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

在C#中的非活动窗口上的某个位置模拟鼠标点击

发布时间:2020-12-15 07:41:31 所属栏目:百科 来源:网络整理
导读:这是原始问题,但它被认为是 java: Simulate mouse clicks at a certain position on inactive window in Java? 无论如何,我正在构建一个在后台运行的机器人.这个机器人要求我点击.当然,我希望能够在机器人运行时做其他事情. 所以我想知道我是否可以在非活动
这是原始问题,但它被认为是 java:
Simulate mouse clicks at a certain position on inactive window in Java?

无论如何,我正在构建一个在后台运行的机器人.这个机器人要求我点击.当然,我希望能够在机器人运行时做其他事情.

所以我想知道我是否可以在非活动窗口的某个位置模拟鼠标点击.

如果可以的话,如果你们中的任何一个人能帮助我,我将不胜感激.

谢谢!

解决方法

是的,这是可能的,这是我以前学校项目使用的代码:
[System.Runtime.InteropServices.DllImport("user32.dll")]
public static extern void mouse_event(int dwFlags,int dx,int dy,int cButtons,int dwExtraInfo);

public const int MOUSEEVENTF_LEFTDOWN = 0x02;
public const int MOUSEEVENTF_LEFTUP = 0x04;
public const int MOUSEEVENTF_RIGHTDOWN = 0x08;
public const int MOUSEEVENTF_RIGHTUP = 0x10;

//This simulates a left mouse click
public static void LeftMouseClick(Point position)
{
    Cursor.Position = position;
    mouse_event(MOUSEEVENTF_LEFTDOWN,position.X,position.Y,0);
    mouse_event(MOUSEEVENTF_LEFTUP,0);
}

编辑:似乎mouse_event功能被SendInput()取代但它仍然有效(Windows 7及更早版本)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读