创建新建时关闭现有的顶层。 Tkinter Python 3

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了创建新建时关闭现有的顶层。 Tkinter Python 3相关的知识,希望对你有一定的参考价值。

我在一个打开顶层窗口的程序中有一个按钮。如果再次按下该按钮,我希望销毁旧的顶层并创建一个新的顶层。我搜索了几个小时,尝试了不同的方法,但似乎没有任何工作。

我已经尝试过各种形式的这些方法:

if toplevel is None or not toplevel.winfo_exists():
    toplevel.destroy()


try:
    toplevel.destroy()
except:
    pass


if toplevel.winfo_exists() == "1":
    toplevel.destroy()

我的代码看起来像这样:

def translate():
        #(I would like to check for and close existing toplevels here)
        toplevel = Toplevel()
        ...stuff

我非常感谢能得到的所有帮助!

答案

translate内部,toplevel是一个局部变量。如果您希望在translate之外访问它并且您没有使用类,则需要将其设置为全局。

以上是关于创建新建时关闭现有的顶层。 Tkinter Python 3的主要内容,如果未能解决你的问题,请参考以下文章

Python GUI编程(Tkinter)Menu顶层菜单

Python中tkinter中控件的使用(7,Menu顶层菜单栏)

条形图图未添加到现有的 tkinter 窗口

条形图图未添加到现有的 tkinter 窗口

如何让 tkinter 消息框出现在顶层前面

C# UDP 一个现有的连接被远程主机强行关闭