如何解决如何在 tkinter 中恢复被破坏的小部件?
def change_section_to_main():
SUB_SECTION.destroy()
APP_MAIN_FRAME.pack()
我想恢复小部件“APP_MAIN_FRAME”。我以为我可以用 pack() 做到这一点,结果我错了。我不断收到此错误 >>
_tkinter.TclError: bad window path name ".!frame
解决方法
您无法“破坏”小部件。一旦它被摧毁就不能再使用了。
通常,解决这个特定问题的方法是隐藏小部件而不是销毁它。您可以使用 pack_forget
、grid_forget
、grid_remove
或 place_forget
之一隐藏它,具体取决于您想要发生的事情以及使用哪种工具 (pack
、grid
或 place
) 用于将其添加到窗口中。
如果您希望经常隐藏和显示小部件,grid
是最佳选择,因为 grid_remove
会记住该项目的放置方式。随后不带参数调用 grid()
将恢复所有设置。 pack
和 place
在忘记时不记得小部件的配置。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。