作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是 tkinter 的新手,我想知道是否有办法清除整个根(窗口)。我尝试使用 root.destroy()
,但我想有机会撤消(回调一些小部件)。我也尝试过 .pack_forget()
和 .grid_forget()
,但是需要花费很多时间,而且以后可能会导致程序出现很多 bug。
感谢您的帮助。
最佳答案
如果您打算真正销毁根窗口中的所有内容,我的建议是使单个框架成为根窗口的子窗口,然后将所有内容放入该框架内。然后,当您需要清除根窗口时,您只需删除这一个小部件,它将负责删除所有其他小部件。
如果您只想隐藏小部件,而不是销毁它们,最好的解决方案是使用grid
,这样您就可以使用grid_forget
将它们从 View 中删除,和grid
使它们再次可见。您可以使用 pack
和 pack_forget
,但 pack
不记得小部件在哪里,这使得在没有大量操作的情况下恢复它们变得更加困难工作。
如果您的程序由小部件的逻辑组组成,请使用框架来创建组,然后您可以立即销毁
或在整个框架上调用grid_forget
,而不必为每个单独的小部件执行此操作。
关于python - 清除整个根部,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28752446/
我是一名优秀的程序员,十分优秀!