在Tkinter清除窗口

时间:2014-07-24 00:01:34

标签: python python-2.7 tkinter

我有一个tkinter GUI,当打开时,它是一个空的小部件,顶部有一个菜单栏。单击菜单上的选项会导致文本框,更多按钮和更多菜单出现在窗口小部件中。我的问题是一切都重叠了。 我需要一种简单的方法来删除当前存在的所有内容,例如"清除窗口"选项。 我已经尝试将所有东西都包装成一个框架,然后摧毁一个框架,但由于某种原因,它不起作用。 有什么建议? 理想情况下,我会做一些事情来检查指定空间中是否有任何内容(按钮,文本框,菜单),并且在创建新的窗口小部件属性之前将其全部删除。

1 个答案:

答案 0 :(得分:0)

通过在每个函数中创建一个新框架并使代码使用Frame.destroy()销毁任何以前存在的框架来修复我遇到的问题。 我的第二个问题,即我的框架中的小部件没有出现,是由于Tkinter框架如何自动调整大小以适应原始小部件。因此,当我向框架添加小部件时,框架仍然是第一个小部件的大小,并且没有显示新按钮。我使用frame.pack_propagate(0)强制框架保持指定的大小。