pythonware.com/library/tkinter/introduction/... 記錄了overrideredirect方法 ,將刪除thetitlebar和 邊界,如果這還不夠,你必須 設置本機窗口樣式,我 不知道的Tkinter爲您提供了 那種低級別的訪問,如果沒有,請嘗試 的像 twapi.magicsplat.com/ui.html#set_window_style TCL擴展使用TCL擴展設置本機窗口樣式在Tkinter的
在之前的文章中,我將這個作爲回覆,告知如何在Tkinter中獲得與下圖相似的邊框。我不熟悉Tcl及其擴展。那麼如何去做這件事?最終目標基本上是在Tkinter窗口中獲取邊框。
alt text http://i30.tinypic.com/69jm2a.png
編輯:
我曾經在Windows 7下,它似乎並沒有改變風格。它可能缺少一些東西。任何幫助將不勝感激,這可能是非常酷!
import string, win32ui, win32con
import Tkinter as tk
root = tk.Tk()
frame = win32ui.CreateWindowFromHandle(string.atoi(root.wm_frame(), 0))
frame.ModifyStyle(win32con.WS_CAPTION, 0, win32con.SWP_FRAMECHANGED)
root.mainloop()
請參閱編輯。這可能很棒。 – rectangletangle 2011-08-18 00:13:43
它可能只需要重新計算幾何圖形 - 您是否嘗試調整窗口大小並查看標題是否會在重繪時突然消失?如果是這樣,那麼添加'w.geometry(w.geometry())'足以重新確定Tk的大小和位置,並使其重新計算所有內容。 – patthoyts 2011-08-18 21:19:09
是的,我試着添加(上面的代碼)** root.geometry(root.geometry())**,** root.update_idletasks()**和** root.configure(width = 225,height = 124)**。以及手動更改窗口幾何圖形(抓住角落並移動它)。他們似乎都沒有刪除標題。是否有可能強制窗口重繪在win32api的一面?也可能導致問題的是我調用了** root.mainloop()**方法,以便可以啓動GUI事件循環。 – rectangletangle 2011-08-18 23:59:07