我希望我的应用程序使用没有框架的Toplevel
窗口,但是当我在创建Toplevel后立即尝试使用overrideredirect
时,它根本不显示。如果我单独调用overrideredirect
,例如按下为最后创建的Toplevel
调用它的按钮,则按预期工作。
这种行为是某种意图,或者至少是明智的吗?我该如何解决它?
答案 0 :(得分:0)
找到一个链接,修复了他为我发出的问题。
http://infohost.nmt.edu/tcc/help/pubs/tkinter/web/toplevel.html
请务必调用.update_idletasks()方法(参见第26节, “通用小部件方法”)在设置此标志之前。如果你打电话 在进入主循环之前,您的窗口将被禁用 永远都会出现。
答案 1 :(得分:0)
我在使用Python 3.6.1和tcl / tk 8.5.18的macOS 10.12.5上遇到了同样的问题(参见this question)。正如上面的评论中所建议的那样,在调用.lift()
之后立即调用顶层窗口上的.overrideredirect(True)
修复了我的问题。