Python pyautogui窗口句柄

时间:2017-05-04 14:39:45

标签: python windows pyautogui

使用pyautogui有办法获取窗口的句柄,以便我可以确保只在该窗口上执行单击操作吗?换句话说,如果我的窗口没有聚焦,则不会发生单击。此外,如果我的窗口没有聚焦,那么我将其置于焦点,然后执行操作。

识别窗口的方式可以是ID,窗口标题等,类似于此https://autohotkey.com/docs/commands/WinGet.htm

是否有其他支持此类功能的Python模块?

3 个答案:

答案 0 :(得分:3)

答案 1 :(得分:2)

PyAutoGui本身在其文档FAQ section中说,

  

问:PyAutoGUI可以找出窗户的位置或可见的窗口吗?它可以集中,最大化,最小化窗口吗?它可以阅读窗口标题吗?

     

答:不幸的是,但这些是PyAutoGUI计划的下一个功能。此功能在名为PyGetWindow的Python包中实现,完成后将包含在PyAutoGUI中。

现在,如果你继续PyGetWindow's repo,你会发现那里还没有代码,但是有一个random_notes.txt文件,带有这个指针:

  

在Windows上查找窗口标题:

     

http://stackoverflow.com/questions/37501191/how-to-get-windows-window-names-with-ctypes-in-python

有一些有趣的信息。 (我还没试过。)

答案 2 :(得分:2)

此代码可能有助于获取要最小化或最大化的窗口。示例:如果您要获取一个标题为“ Stack Overflow”的Chrome窗口,

    pyautogui.getWindow("Stack Overflow").minimize()

或者,如果您想最小化或最大化任何标题为“音乐”的文件浏览器窗口,则同样适用。

    pyautogui.getWindow("music").maximize()