我正在尝试从事件窗口中删除 Tkinter 进度条小部件(在初始化使用 Tkinter 的 GUI 窗口之后)。我正在为我的窗口使用 Tkinter Frame。我已经将进度条初始化为pb,如下所示。
pb = ttk.Progressbar(root,orient ="horizontal",length = 540, mode ="determinate")
然后我尝试了两种不同的方法来摆脱进度条。当我在 GUI 初始化后尝试使用它时,下面的行会导致窗口卡住并停止响应。
pb.pack_forget()
下面的行只会使进度条的中间部分消失,但您仍然可以看到它的两侧。
pb.destroy()
有什么办法可以让这个小部件在框架初始化后消失吗?
最佳答案
你的问题的具体答案是,pack_forget
、grid_forget
或 grid_remove
是你想要的,如果你想让一个小部件暂时不可见.您选择哪一个取决于您使用的是 grid 还是 pack,以及您是否希望 grid 记住它的位置以便您以后可以将它放回原处。
destroy
是您想要真正销毁小部件时要调用的内容。
如果使用得当,这些方法都不会导致您的程序卡住。如果没有看到您的代码,就不可能知道问题的根本原因是什么。
关于python - Python 中的 Tkinter - 从事件窗口中删除小部件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17678771/