pyautogui:Windows上未触发悬停事件

时间:2020-07-13 00:23:09

标签: python windows user-interface automation pyautogui

我正在将python 3.x与pyautogui库一起使用。当我将鼠标移到任务栏上的Windows图标时,该图标会更改其颜色(由于悬停事件)。然后单击它以打开菜单。

现在是我的问题:

使用pyautogui.moveto(x, y)移动鼠标后,鼠标光标在Firefox符号上方,但不会触发任何悬停(请参见所附的屏幕截图)。只有在我手动移动鼠标之后,鼠标才会被触发并突出显示。

这是一个错误吗?我该如何解决?

no_hover_event_with_pyautogui

1 个答案:

答案 0 :(得分:0)

类似的post描述了计算器的同一问题。这是一个错误,很可能来自Windows API本身,请参见已报告的问题here。找到了解决方案,但未实现,该错误仍然存​​在。
我可以使用以下代码在使用Python 3.6.8和pyautogui 0.9.50的Windows上重现该错误:

import pyautogui
pyautogui.press('win')
pyautogui.moveTo(200, 820, duration=3)
pyautogui.scroll(-900)

观看视频here。我在帖子中将pyautogui的源更改为建议的解决方案,并且可以使用。

解决方案:

  1. 在github上分叉pyautogui代码存储库
  2. 实施issue 314上提到的解决方案
  3. 卸载pyautogui
  4. 从派生的存储库中从源代码重新安装pyautogui

注意:这只是一个调整,请记住pyautogui维护者出于某种原因决定不进行此实现。因此,请确保在某个时候再次重新安装正式版本。

相关问题