如何使用Python在Windows应用程序中右键单击上下文菜单?

时间:2015-10-30 02:29:06

标签: python windows win32gui pywinauto

如何使用Python在Windows应用程序中获取右键单击上下文菜单,不要设置光标的位置以及何时不关注该Windows应用程序。

上下文菜单不是资源管理器上下文菜单,它是Windows应用程序右键单击上下文菜单。

enter image description here

1 个答案:

答案 0 :(得分:1)

以下是记事本的示例:

app.UntitledNotepad.Edit.Click(button='right') # works
app.PopupMenu.MenuSelect('Paste') # seems not working when Notepad is not in focus
# though it works when app.UntitledNotepad.SetFocus() is called before

app.PopupMenu.MenuSelect('Paste')在这种情况下可能无效,因为WM_COMMAND可能只能发送到焦点窗口。要使其工作,请使用app.PopupMenu.MenuItem('Paste').ClickInput(),但您的应用窗口将以任何方式聚焦。

所以最后有2个工作实例。第一个是:

app.UntitledNotepad.SetFocus()
app.UntitledNotepad.Edit.Click(button='right')
app.PopupMenu.MenuSelect('Paste')

第二个是:

app.UntitledNotepad.Edit.Click(button='right')
app.PopupMenu.MenuItem('Paste').ClickInput()