有沒有辦法在Tkinter中獲得這樣的邊框?注意它缺少右上角的按鈕。另外我不希望這個程序顯示在任務欄中。如何在Tkinter中獲得這樣的窗口邊框?
alt text http://i30.tinypic.com/2zrm6py.png
這是Windows 7,順便說一句。
有沒有辦法在Tkinter中獲得這樣的邊框?注意它缺少右上角的按鈕。另外我不希望這個程序顯示在任務欄中。如何在Tkinter中獲得這樣的窗口邊框?
alt text http://i30.tinypic.com/2zrm6py.png
這是Windows 7,順便說一句。
的WS_DLGFRAME窗口風格應該給你一個窗口沒有標題欄和WS_EX_TOOLWINDOW通常也用於這樣的窗口,所以它不是在任務欄上可見(或具有類似Vista之前的控制面板對話框隱藏的父窗口)你可以用Spy ++(Visual Studio)或WinSpy++
這樣的工具找出確切的窗口樣式Tk(並因此Tkinter)具有刪除所有窗口管理器裝飾的命令。 tkinter中的這個命令是頂級窗口的「wm_overrideredirect」方法。傳遞一個True參數來刪除窗口管理器裝飾。然後,您可以繪製任何想要的邊框,通常通過在整個窗口上打印畫布並在畫布上繪圖。
但是,當我在我的Mac上對此進行實驗時,窗口顯示正常但不會佔用焦點。也許這是Tkinter的一個bug。我在Tcl中看不到相同的問題。
我似乎無法在Tkinter中使用它,這些小小的外觀實現了什麼? – rectangletangle 2010-07-21 04:35:30
@ anteater7171:http://www.pythonware.com/library/tkinter/introduction/x9843-style-methods.htm記錄了一個overrideredirect方法,它將移除標題和邊界,如果這還不夠,你必須設置本地窗口樣式,我不確定Tkinter是否會爲您提供這種低級訪問,如果不是,請嘗試http://twapi.magicsplat.com/ui.html#set_window_style TCL擴展 – Anders 2010-07-21 05:04:04