python - 有没有办法通过 Python 3 最小化 Windows 7 中的窗口?

标签 python windows winapi

我正在运行一个带有内置 Python 解释器的程序。我希望该程序能够定期“全屏”显示或最小化。

这将在 Windows 7 上运行。

我想知道是否有一种方法可以在 Python 中执行此操作(以便我可以从我的程序中调用该函数)。只使用标准库是理想的,但如果有办法用外部模块来做到这一点,那也很好。

谢谢。

最佳答案

要最小化窗口,您需要知道窗口的标题或其窗口类。当不知道确切的窗口标题时,窗口类很有用。例如,以下脚本显示了两种不同的方法来最小化 Microsoft Windows 记事本应用程序,假设:

import ctypes

notepad_handle = ctypes.windll.user32.FindWindowW(None, "Untitled - Notepad")
ctypes.windll.user32.ShowWindow(notepad_handle, 6)

notepad_handle = ctypes.windll.user32.FindWindowW(u"Notepad", None) 
ctypes.windll.user32.ShowWindow(notepad_handle, 6)  

要确定要使用的类名,您需要使用 Microsoft 的 Spy++ 等工具。显然,如果用文件打开记事本,它会有不同的标题,例如 test.txt - Notepad。如果是这种情况,第一个示例现在将无法找到窗口,但第二个示例仍然有效。

如果两个记事本正在运行,那么只有一个会被关闭。如果需要关闭所有副本,则需要枚举所有需要更多代码的窗口。

ShowWindow命令也可以用来恢复窗口。此处使用的 6SW_MINIMIZE 的 Windows 代码。

关于python - 有没有办法通过 Python 3 最小化 Windows 7 中的窗口?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32344140/

相关文章:

python - 如何在 Python 中将数组(二维列表)分配给字典?

python - 如何在 Django 的查询集中传递两个以上的参数?

windows - 列出使用智能卡读卡器的进程

c++ - 检索计算机的名称并将其保存在变量中

msbuild - 如何在 MSBuild 中使用特定的 Windows SDK?

windows - 创建虚拟文件夹并将它们挂接到文件系统

python - pytest - 如何知道选择了哪些标记

python - numpy 溢出

c++ - 如何在 Windows : 中用 C++ 比较两个端点地址

windows - RDP 断开连接时 Watin 截取黑色屏幕截图