目前我想尝试等待条件说x> 5,然后当发生这种情况时我想更改标签的图像,等待10秒,然后返回到原始图像但我不断得到不同的错误
主要是,我想知道如何更改标签的图像然后将其更改回来。 我想将照片中的图像更改为gif,然后再返回照片。
如何在没有错误的情况下完成此任务?
答案 0 :(得分:2)
简而言之:
the_label.configure(image=the_first_image)
the_label.after(5000, lambda: the_label.configure(image=the_second_image))
当然,在实践中它稍微复杂一点,因为你必须创建图像,担心这个代码是否在不到5秒钟内被调用两次等等。但总体思路是一样的:使用after
在给定的毫秒数之后安排命令将其更改回来。
注意:您不必使用lambda。您可以调用预定义函数,也可以使用functools.partial。 stackoverflow上有很多例子。