我正在尝试使其中一张图像(“ monika_sprite”)在屏幕上闪烁约半秒钟。我希望图像只出现一会儿,然后消失,同时又恢复到以前的图像。
我试图创建一个if语句来解决问题,但是它似乎没有任何作用。
# text box image
def display_textBox():
global panel1
textBox = Image.open("C:\\Python Programs\\Just
Monika\\Images\\textBox.jpg")
tkTextBox = ImageTk.PhotoImage(textBox)
panel1 = Label(window, image = tkTextBox)
panel1.place(x=675, y=300)
panel1.image = tkTextBox #to avoid garbage collection
def flash_monika():
global flash
monika_sprite = Image.open('C:\\Python Programs\\Just
Monika\\Images\\monika_sprite.png')
tkMonika_sprite = ImageTk.PhotoImage(monika_sprite)
flash = Label(window, image = tkMonika_sprite)
flash.place(x=520, y=50)
flash.image = tkMonika_sprite
if flash_monika > 500:
panel1 = Label(window, image = tkTextBox)
panel1.place(x=675, y=300)
panel1.image = tkTextBox #to avoid garbage collection
flash_monika.loop()
window.after(delay_textBox, display_textBox)
window.after(delay_audio, play_audio)
window.after(delay_sprite, flash_monika)
window.after(delay_monika, justMonika)
window.mainloop()
我创建的if语句对程序完全没有影响。仅在mainloop工作上方实现了延迟,仅此而已。图片“ monika_sprite”需要一种在大约500毫秒后销毁的方式。
非常感谢您的帮助。