fsdajlkl
fsdajlkl
采纳率0%
2017-01-20 08:13 阅读 7.9k

Python模拟后台鼠标点击失效问题,待解决,急!!!

我用Python在做一个自动按键脚本小程序,使用Sendmessage和Postmessage向指定程序发送指令,
本来都进行的挺顺利的,但是遇到一个问题始终无法解决。
问题是这样的:窗口程序有一个复选框,我需要向该程序窗口发送一个鼠标点击指令,点选该复选框,
当该窗口位于前台时,我的程序可以点选该复选框,没有问题,但是当我把窗口最小化之后,再运行
程序,没有任何反应,复选框没有被选中,再将该窗口显示到前台后,即使不是当前激活到窗口,也可
以实现点选复选框。一般情况下我是需要把该程序窗口最小化的,方便做其他事情,请问如何解决窗口
最小化后无法点选复选框的问题?
代码如下:

 import win32api,win32gui,win32con
 win32gui.SendMessage(hwnd, win32con.WM_ACTIVATE,win32con.WA_ACTIVE,0)
win32gui.SendMessage(hwnd,win32con.WM_LBUTTONDOWN,win32con.MK_LBUTTON,win32api.MAKELONG(8,30))
win32gui.SendMessage(hwnd,win32con.WM_LBUTTONUP,win32con.MK_LBUTTON,win32api.MAKELONG(8,30))
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

3条回答 默认 最新

  • l714417743 子涵先生 2020-06-24 08:04

    楼主解决了吗?我两台电脑,一台可以点击,另一台点击失败。说权限问题的大佬,请教一下如何在pycharm中用管理权限运行呢?我试过修改注册表和用代码打印是否具有管理员权限,发现是有的。仍然存在点击失败的问题。

    解决办法

    我把原先的pyMouse卸载掉后,重新进行了安装;

    • 卸载PyMouse pip uninstall PyMouse
    • 然后重新安装: pip install PyMouse
    • 照样遇到“Python:ModuleNotFoundError: No module named 'windows'”,心中大喜,这个问题是老路了;
    • 解决之后,果然,可以点击了。
    点赞 1 评论 复制链接分享
  • strongerzhi Kolamu 2017-01-20 09:00

    需要点的时候把窗口显示出来,不需要点的时候把窗口最小化,或者隐藏

    点赞 评论 复制链接分享
  • u011656287 ItsukiFujii 2020-04-03 17:27

    使用管理员身份运行python脚本,不用谢我

    点赞 评论 复制链接分享

相关推荐