我一直在使用Windows API調用,以便可以使用Tkinter的某些本機Windows窗口樣式。當我嘗試阻止窗口大小可調時,我遇到了問題。在窗口映射之前使用root.resizable(False, False)
會產生與root.overrideredirect(True)
方法不同的效果;在風格改變之後調用它導致各種瘋狂(窗口嚇壞了)。我在想,可能有一個窗口特定的相當於root.resizable(False, False)
。我將如何得到這個工作?請記住我有一個Tkinter窗口的句柄。使窗口在Windows中不可調整大小
代碼:
import Tkinter as tk
import string, win32ui, win32con
def decaption(event):
root = event.widget
# makes a handle to the window
handle = string.atoi(root.wm_frame(), 0)
# changes the style
frame = win32ui.CreateWindowFromHandle(handle)
frame.ModifyStyle(win32con.WS_CAPTION, 0, win32con.SWP_FRAMECHANGED)
root.bind("<Map>", None)
root = tk.Tk()
# changes the style when the window is mapped
root.bind("<Map>", decaption)
root.mainloop()