2016-09-28 17 views
-1

我知道我可以創建一個tk.Frame(或ttk.Frame)的子類並將其添加到TopLevel做輔助窗口,但我不知道我應該如何使用它作爲主窗口。我知道創建一個Frame類的實例並調用.mainloop()對它來說似乎適用於將它用作主窗口,但我覺得這是不好的做法...我應該如何創建一個可以用作我的主應用程序窗口的類,但也可以用作輔助窗口

其他人做什麼時他們做什麼正在製作他們想要用於主窗口和輔助窗口的GUI佈局?

+0

不知道你在問什麼。主窗口(如果你是指根窗口)也是一個'Toplevel'對象。 – Goyo

回答

1

創建一個Frame的子類,然後將其放在根窗口或頂層。無論哪種情況,您仍然只在根窗口上撥打mainloop一次。

唯一需要注意的是您必須小心讓用戶關閉根窗口,因爲這會導致所有其他窗口被銷燬。

如果您正在創建一個可以具有多個窗口的程序,那麼您可能需要考慮隱藏根窗口並始終將窗口放入Toplevel。當然,當你這樣做的時候,你需要確保在最後一個頂層窗口被銷燬時銷燬根窗口,否則你的程序將繼續運行,但用戶將無法訪問它。

相關問題