获取窗口句柄模拟鼠标点击 您所在的位置:网站首页 自动刷新窗口句柄怎么设置 获取窗口句柄模拟鼠标点击

获取窗口句柄模拟鼠标点击

2024-07-17 12:36| 来源: 网络整理| 查看: 265

一、任务要求。

  需要我们编写一个程序能够自动的进行某些鼠标点击的操作。比如某个客户端,我们利用程序,可以自动点击操作。

二、需求分析。

  为了实现这种要求,我们必须首先获得需要操作窗口的句柄。其次是点击的位置。

  1.获取窗口的句柄。

    我们需要明确,我们在获得窗口的句柄时,要明确我们窗口是不是顶级窗口。因为我们获取窗口的函数(FindWindow()),是在顶层窗口中查找的。或者利用其它API从最顶层的位置向下索引。这些都要根据我们要操作窗口的位置来决定的。在本程序中,我们是利用顶层窗口的句柄,然后利用距离顶层窗口起始点的相对位置来进行模拟鼠标点击。

  2.点击位置。

    点击位置的确定需要注意的一点是,我们用按键精灵的抓抓工具时,上面的相对位置是客户区的相对位置,并不是距离顶层窗口起始点的相对位置。

三、工具

  1.按键精灵的抓抓工具、vs2017。

四、代码实现

1 int mousemove(int x, int y) { 2 ::SetCursorPos(x, y); 3 mouse_event(MOUSEEVENTF_LEFTDOWN | MOUSEEVENTF_LEFTUP, 0, 0, 0, 0); 4 return 0; 5 } 模拟点击 1 bool mouse_down(string titlename, int position_x, int position_y) { 2 HWND hd_desk = GetDesktopWindow(); 3 4 HWND hd = GetWindow(hd_desk, GW_CHILD); //得到屏幕上第一个子窗口 5 char s[200] = { 0 }; 6 std::cout


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

      专题文章
        CopyRight 2018-2019 实验室设备网 版权所有