win32gui 寻找窗口句柄
时间: 2024-10-07 18:00:33 浏览: 28
在 Windows 平台上,如果要用 Python 实现查找特定窗口的句柄,可以使用 `pywin32` 库中的 `win32gui` 模块,它提供了与 Windows API 对接的功能。`win32gui.EnumWindows` 函数是一个关键工具,它可以枚举指定线程下的所有窗口,并提供窗口的句柄 (`HWND`) 和一些元数据。
下面是一个基本的例子,展示了如何通过窗口标题查找窗口句柄:
```python
import win32gui
def find_window_by_title(title):
def callback(hwnd, _):
if win32gui.IsWindowVisible(hwnd) and win32gui.GetWindowText(hwnd).lower() == title.lower():
print(f"Found window handle: {hwnd}")
return True # 遇到目标窗口就返回True,终止枚举
win32gui.EnumWindows(callback, None)
find_window_by_title('Your Target Window Title') # 替换为你想要查找的窗口标题
```
在这个例子中,`callback` 函数会在枚举过程中检查每个窗口,如果窗口可见并且标题匹配,就会打印出窗口句柄。注意,由于 `IsWindowVisible` 可能导致枚举提前结束,所以在找到目标窗口后返回 `True` 来停止搜索。