导航
  • 主页
  • Python 数据分析三剑客
  • Python 问答

python后台鼠标点击问题

jason110163 2020-08-11 11:46:49
请问如何实现后台点击鼠标


我以win系统自带计算器为例做了测试,发现无法点击。



import win32gui, win32ui, win32con, win32api

#hwnd为需要点击的窗口句柄,cx、cy为点击位置在该窗口的相对坐标

hwnd = win32gui.FindWindow(0, "计算器")
print(hwnd)

def doClick(cx,cy):
long_position = win32api.MAKELONG(cx, cy)#模拟鼠标指针 传送到指定坐标
win32api.SendMessage(hwnd, win32con.WM_LBUTTONDOWN, win32con.MK_LBUTTON, long_position)#模拟鼠标按下
win32api.SendMessage(hwnd, win32con.WM_LBUTTONUP, win32con.MK_LBUTTON, long_position)#模拟鼠标弹起
print(cx,cy)

doClick(327,436)


请大家帮我看看问题出在哪里?

...全文
230 1 收藏 1
写回复
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
陈年椰子 2020-09-28
我是用 SetCursorPos 和 mouse_event 来实现点击。


win32api.SetCursorPos([mx, my])
# 执行左单键击,若需要双击则延时几毫秒再点击一次即可
win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP | win32con.MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0)

回复
发动态
发帖子
脚本语言(Python,Perl 等)
创建于2007-08-27

3.6w+

社区成员

Python,JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
申请成为版主
社区公告

CSDN 脚本语言社区接受专栏投稿(专栏会在顶部创建专属你的栏目),投稿需满足以下要求:

  • 脚本语言技术相关;
  • 文章持续更新,保持活跃;
  • 内容清晰明了,干货为主;
  • 文章排版有序,有条有理。

本社区开通招聘专栏,发布招聘信息请联系版主,发布者需要保证招聘信息真实有效,CSDN 平台和版主不对招聘内容负责!

联系方式:私聊版主、发送邮件、QQ联系等均可: