pywin32获取窗口句柄
时间: 2024-02-15 07:58:55 浏览: 201
可以使用pywin32库来获取窗口句柄。以下是获取窗口句柄的示例代码:
```python
import win32gui
# 通过窗口标题查找窗口句柄
hwnd = win32gui.FindWindow(None, '窗口标题')
# 通过窗口类名查找窗口句柄
hwnd = win32gui.FindWindow('窗口类名', None)
# 通过窗口类名和标题查找窗口句柄
hwnd = win32gui.FindWindow('窗口类名', '窗口标题')
```
其中,`FindWindow`函数可以通过窗口类名和/或窗口标题来查找窗口句柄。如果只知道窗口标题,可以将窗口类名参数设为`None`;如果只知道窗口类名,可以将窗口标题参数设为`None`。
另外,还可以使用`EnumWindows`函数来枚举所有窗口,并对每个窗口执行指定的回调函数。以下是一个使用`EnumWindows`函数获取所有窗口句柄的示例代码:
```python
import win32gui
def get_all_hwnd(hwnd, hwnds):
if win32gui.IsWindow(hwnd) and win32gui.IsWindowEnabled(hwnd) and win32gui.IsWindowVisible(hwnd):
hwnds.append(hwnd)
hwnds = []
win32gui.EnumWindows(get_all_hwnd, hwnds)
```
以上代码中,`get_all_hwnd`函数是一个回调函数,用于判断当前窗口是否符合条件,并将符合条件的窗口句柄添加到列表中。`EnumWindows`函数会对每个窗口执行该回调函数,从而获取所有符合条件的窗口句柄。
阅读全文