有些时候我们去做页面切换可能需要删除一些部件,我们可以用下面的方法来删除Frame中的部件
for i in frame.winfo_children():
i.destroy()
winfo_children()
winfo_children()是获取Frame中的所有部件
我们用一个for循环来遍历这些控件,再用i来删除此控件
除了destroy() 可以删除部件我们也可以用 forget 来隐藏 部件(不会删除)
# 适用于Pack布局
i.pack_forget()
# 适用于Grid布局
i.grid_forget()
举例
动态更新的话可以用StringVar
这里仅作参考!
from tkinter import *
from tkinter import ttk
root = Tk()
root.geometry("300x200+100+100")
root.title("新年快乐")
frame = ttk.LabelFrame(text="未关注")
frame.pack()
Label(frame, text="未点赞").pack()
def callback(event=None):
for i in frame.winfo_children():
i.destroy()
Label(frame, text="点赞成功!新年快乐!").pack()
Label(frame, text="收藏成功!祝你万事如意!").pack()
frame.config(text="已关注!龙年大吉!")
btn.destroy()
btn = Button(root, text="三联", command=callback)
btn.pack()
mainloop()
好了!最后别忘了