所以我正在制作一个使用 Tkinter 有许多按钮和窗口的项目,我使用 pyttsx3 模块实现了 tts。考虑以下示例:
import pyttsx3
from Tkinter import *
#configure text-to-speech
engine = pyttsx3.init()
def speak(text):
engine.setProperty("rate", 150)
engine.say(text)
engine.runAndWait()
root = Tk()
def submit():
top = Toplevel(root)
hello_world = Label(top, text = "Hello World")
hello_world.pack()
speak("Hello World")
click_me = Button(root, text = "Click Me", command = submit)
click_me.pack()
root.mainloop()
单击按钮时,tts 命令将首先运行,窗口将冻结,直到 pyttsx3 完成讲话,然后仅加载窗口。当有很多文字要说时,这个问题会变得更糟。
我想要的是 tts 命令应该在加载窗口后执行。我该怎么做?