slo*_*oth 66
您可以调用pack_forget删除小部件(如果您使用pack它将其添加到窗口).
例:
from tkinter import *
root = Tk()
b = Button(root, text="Delete me", command=lambda: b.pack_forget())
b.pack()
root.mainloop()
Run Code Online (Sandbox Code Playgroud)
如果您使用pack_forget,您可以稍后再次显示小部件pack.如果要永久删除它,请调用destroy小部件(然后您将无法重新添加它).
如果你使用的grid方法,你可以使用grid_forget或grid_remove以隐藏的窗口小部件.
Ozi*_*iro 14
你可以做到的一种方法是从需要清除的框架中获取奴隶清单,并根据你的需要销毁或"隐藏"它们.要获得清晰的框架,您可以这样做:
from tkinter import *
root = Tk()
def clear():
list = root.grid_slaves()
for l in list:
l.destroy()
Label(root,text='Hello World!').grid(row=0)
Button(root,text='Clear',command=clear).grid(row=1)
root.mainloop()
Run Code Online (Sandbox Code Playgroud)
您应该调用grid_slaves(),pack_slaves()或者slaves()根据您用于将窗口小部件添加到框架的方法.
您只需使用该destroy()方法删除指定的小部件,如下所示:
lbl = tk.Label(....)
btn = tk.Button(....., command=lambda: lbl.destroy())
Run Code Online (Sandbox Code Playgroud)
使用它,您可以完全销毁特定的小部件。