有根据项目模式的方法很多,都基于语法:
vis=Label(pur,text='Purchase Added successfully',font=(8))
vis.place(x=150,y=460)
vis.after(3000, function_to_execute)
彻底毁灭
如果您不想知道是否已经创建的标签,隐藏或空的,并且大多避免可能的内存泄漏(感谢Bryan Oakley的评论):
vis.after(3000, lambda: vis.destroy())
但是那么你需要为每笔购买创建一个全新的Label
。
捉迷藏
以下方法允许停用的标签的显示,而不破坏它。
vis.after(3000, lambda: vis.place_forget())
#vis.after(3000, lambda: vis.grid_forget()) # if grid() was used
#vis.after(3000, lambda: vis.pack_forget()) # if pack() was used
然后,您可以再次启用它的下一个收购,与vis.place(x=150,y=460)
文本橡皮擦
的另一种方式,也许不感兴趣,除非你喜欢让空标签中容器部件:
vis.after(3000, lambda: vis.config(text=''))
(请注意,您可以用vis.config(text='blabla')
代替下次购买的文字)
非常感谢!这有帮助! –
'place_forget'只是将它从显示中删除,它不会销毁小部件。如果你继续创造新的标签而不破坏旧的标签,你最终会泄漏内存。 –