我有一个简单的Python脚本,在控制台窗口中运行。
我怎样才能确保控制台窗口始终位于顶部,如果可能resize?
要使用cmd窗口执行此操作,您可能必须调用大量的win32调用。
mport win32gui, win32process, win32con import os windowList = [] win32gui.EnumWindows(lambda hwnd, windowList: windowList.append((win32gui.GetWindowText(hwnd),hwnd)), windowList) cmdWindow = [i for i in windowList if "c:\python26\python.exe" in i[0].lower()] win32gui.SetWindowPos(cmdWindow[0][1],win32con.HWND_TOPMOST,0,0,100,100,0) #100,100 is the size of the window
马克的答案我到达了这个:
import win32gui import win32con hwnd = win32gui.GetForegroundWindow() win32gui.SetWindowPos(hwnd,win32con.HWND_TOPMOST,100,100,200,200,0)
如果你正在创建你自己的窗口,你可以使用Tkinter来创建一个“永远在上面”的窗口,如下所示:
from Tkinter import * root = Tk() root.wm_attributes("-topmost", 1) root.mainloop()
然后把你想要在主循环内发生的事情。
如果您正在讨论命令提示符窗口,那么您将不得不使用一些特定于Windows的实用程序来保持该窗口在最前面。 您可以尝试此脚本的Autohotkey 。