Pythonでウインドウハンドルの取得と制御を行う方法は何ですか?
PythonではPyWin32ライブラリを使用してウィンドウハンドルを取得し、ウィンドウを制御できます。以下はウィンドウハンドルを取得するサンプルコードです。
import win32gui
# 回调函数,用于枚举窗口
def enum_windows_callback(hwnd, window_list):
window_list.append(hwnd)
# 获取所有顶级窗口句柄
window_list = []
win32gui.EnumWindows(enum_windows_callback, window_list)
# 打印窗口句柄
for hwnd in window_list:
print(hwnd)
ウィンドウを制御するために、次の関数を使用してwin32guiライブラリを使用できます。
import win32gui
import win32con
# 获取窗口句柄
hwnd = win32gui.FindWindow(None, '窗口标题')
# 最大化窗口
win32gui.ShowWindow(hwnd, win32con.SW_MAXIMIZE)
# 最小化窗口
win32gui.ShowWindow(hwnd, win32con.SW_MINIMIZE)
# 还原窗口
win32gui.ShowWindow(hwnd, win32con.SW_RESTORE)
# 设置窗口位置
win32gui.SetWindowPos(hwnd, win32con.HWND_TOP, x, y, width, height, win32con.SWP_SHOWWINDOW)
上記の例では、ウィンドウのタイトルはウィンドウのタイトルバーに表示されるテキストであることに注意してください。他のプロパティを使用してウィンドウを検索する場合は、win32gui.FindWindowEx 関数を使用できます。
さらに、win32gui.GetWindowTextとwin32gui.SetWindowText関数を使って、ウインドウのタイトルを取得および設定できます。win32gui.GetWindowRect関数を使って、ウインドウの位置とサイズ情報を取得できます。