如何根据句柄获取窗口

可以使用 win32gui 模块中的 GetWindowTextGetClassName 函数获取窗口的标题和类名,从而识别窗口。 以下是基本的实现方法:

import win32gui
def get_window_info(hwnd):
    # 获取窗口标题和类名
    window_title = win32gui.GetWindowText(hwnd)
    class_name = win32gui.GetClassName(hwnd)
    # 输出窗口信息
    print("窗口标题:", window_title)
    print("窗口类名:", class_name)

其中,GetWindowText 函数可以获取窗口标题,GetClassName 函数可以获取窗口类名。 如果需要使用更多的窗口信息,可以使用 GetWindowRect 函数获取窗口的位置和大小,使用 GetWindowThreadProcessId 函数获取窗口所属的进程 ID 等。例如:

def get_window_info(hwnd):
    # 获取窗口标题和类名
    window_title = win32gui.GetWindowText(hwnd)
    class_name = win32gui.GetClassName(hwnd)
    # 获取窗口位置和大小
    rect = win32gui.GetWindowRect(hwnd)
    x, y, width, height = rect
    # 获取窗口所属进程的 ID
    process_id = win32gui.GetWindowThreadProcessId(hwnd)[1]
    # 输出窗口信息
    print("窗口标题:", window_title)
    print("窗口类名:", class_name)
    print("窗口位置:", x, y)
    print("窗口大小:", width, height)
    print("进程 ID:", process_id)

以上是根据窗口句柄获取窗口信息的方法,可以根据需要使用不同的函数获取窗口信息。