如果你想获取所有窗口的句柄,你可以使用 win32gui.EnumWindows 函数。以下是一个简单的示例,它列出所有窗口的标题和句柄:

import win32gui

def get_all_window_handles():
    def callback(handle, handles):
        handles.append(handle)
        return True

    window_handles = []
    win32gui.EnumWindows(callback, window_handles)
    return window_handles

all_handles = get_all_window_handles()

for handle in all_handles:
    title = win32gui.GetWindowText(handle)
    print(f"Window Handle: {handle}, Title: {title}")

此示例中,get_all_window_handles 函数使用 win32gui.EnumWindows 遍历所有窗口,并调用 callback 函数来获取每个窗口的句柄。最后,打印了每个窗口的标题和句柄。

确保在运行此代码之前安装了 pywin32 库:

bashpip install pywin32 

请注意,这将列出所有窗口,包括系统窗口和其他隐藏窗口。你可能需要添加一些过滤条件来获取你真正关心的窗口。

获取当前置顶的窗口句柄

要获取当前置顶的窗口句柄,你可以使用 win32gui.GetForegroundWindow 函数。以下是一个简单的示例:

import win32gui

def get_foreground_window_handle():
    return win32gui.GetForegroundWindow()

foreground_handle = get_foreground_window_handle()
print(f"Foreground Window Handle: {foreground_handle}")

这个示例中的 get_foreground_window_handle 函数使用 win32gui.GetForegroundWindow() 获取当前置顶窗口的句柄。然后,打印了该句柄。

确保在运行代码之前安装了 pywin32 库:

bashpip install pywin32 

请注意,这只是获取当前置顶窗口的句柄。如果你想要获取其他信息,比如窗口标题等,你可以使用其他 win32gui 函数,比如 win32gui.GetWindowText

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐