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

Close existing toplevel when a new is created. Tkinter Python 3

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

我以各种形式尝试了这些方法:

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

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

里面translatetoplevel是局部变量。如果您希望在 translate 之外访问它并且您没有使用 类.

,则需要将其设为全局