我正在运行一个内置Python解释器的程序。我希望该程序能够定期进入全屏"或者最小化。
这将在Windows 7上运行。
我想知道是否有办法在Python中执行此操作(以便我可以从我的程序中调用该函数)。仅使用标准库是理想的,但如果有办法使用外部模块,那也没关系。
感谢。
答案 0 :(得分:4)
要最小化窗口,您需要知道窗口的标题或窗口类。当确切的窗口标题未知时,窗口类很有用。例如,以下脚本显示了两种不同的方法来最小化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命令也可用于恢复窗口。