У меня есть эта проблема: я создал эту программу с Python3 и Tkinter, которые показывают изображение места (например, горы или море), и программа говорит, какое место показано на рисунке. Проблема в том, что когда изображение меняется, оно появляется только на несколько мгновений, как раз в тот момент, когда программа говорит, что это за место, а исчезают и остаются только меткой, на которой написано, что представляет собой изображение.
Это код:
from tkinter import *
from PIL import Image,ImageTk
import pyttsx3
root = Tk()
root.title("Try change image")
root.geometry("1000x600")
root.resizable(height=FALSE,width=FALSE)
Leftframe = Frame(root)
Leftframe.pack(side = LEFT)
Rightframe = Frame(root)
Rightframe.pack(side=RIGHT)
engine = pyttsx3.init()
voices = engine.getProperty('voices')
rate = engine.getProperty('rate')
engine.setProperty('rate', rate -20)
for voice in voices:
engine.setProperty('voice',voice.id)
def start():
global back_label,label
back = ImageTk.PhotoImage(file=directory mountain picture)
back_label = Label(Leftframe,image = back)
back_label.pack()
label=Label(Rightframe,text="Mountain")
label.pack()
root.update()
engine.say("Mountain")
engine.runAndWait()
def change():
back_label.destroy()
label.destroy()
back = ImageTk.PhotoImage(file=directory sea picture)
back_label1 = Label(Leftframe,image = back)
back_label1.pack()
label1 = Label(Rightframe,text="Sea")
label1.pack()
root.update()
engine.say("Sea")
engine.runAndWait()
start()
change()
root.mainloop()
Надеюсь, вы понимаете, что я хочу сделать, мы будем благодарны за любую помощь