Python Tkinter:关闭由不再运行的函数打开的窗口

时间:2015-09-17 19:17:40

标签: python-2.7 tkinter

假设我使用root = Tk()创建了一个Tkinter窗口到函数中并退出该函数,那我该如何关闭窗口呢?我会发一个例子。

def example():
    root = Tk()
    root.update()

print 'opening window'
example()
print 'closing window'
#close window opened by example()?

如果有办法关闭所有打开的Tkinter窗口,我真的很喜欢它。

1 个答案:

答案 0 :(得分:1)

与任何对象一样,您需要对窗口的引用才能将其关闭。您的函数应该修改全局变量或返回对调用者的引用。

def example():
    root = Tk()
    root.update()
    return root

print 'opening window'
window = example()
print 'closing window'
window.destroy()

在你的问题的最后你写了“我真的很喜欢它,如果有办法关闭所有打开的Tkinter窗口。”因为tkinter只设计了一个根窗口打开,这应该不是问题。只需跟踪创建的一个根窗口。当你摧毁它时,任何儿童窗户也将被摧毁。