首页 > 解决方案 > Python获取特定的窗口标题

问题描述

我希望能够检测到一个专门命名的窗口(在任何进程中)的存在,以用作“if”变量

经过一番研究,我得出结论我必须使用该win32gui库(一些帖子也建议ctypes),但我发现的大多数帖子都是关于制作进程列表的,唯一与该主题相关的帖子没有回答正确提问。也许我太新手无法理解它,但最后,我无法让它工作(问题是这个

为了举例说明我想要什么,我将分享一个简单的.vbs代码:它搜索一个特定的名称(在我们的例子中,史蒂夫乔布斯),如果它在任何地方找到它,它就会触发(在这个例子中,它关闭所说的过程)

do
WindowTitle = "steve jobs"
set shell = createObject("wscript.shell") 
success = shell.appactivate(WindowTitle)
if success then shell.sendkeys "%{F4}" 
loop

标签: pythonwin32gui

解决方案


import win32gui

win2find = input('enter name of window to find')
whnd = win32gui.FindWindowEx(None, None, None, win2find)
if not (whnd == 0):
  print('FOUND!')

您可以在 Google 上搜索“FindWindowEx”

找到https://msdn.microsoft.com/en-us/library/windows/desktop/ms633500(v=vs.85).aspx

FindWindowEx 函数的描述


推荐阅读