我在我的UI的弹出窗口中使用Progressbar
来通知用户必须等待10秒才能使用UI执行其他操作。
如何添加睡眠(10)或与代码类似的东西,以免它被卡住?
window3 = Toplevel(self)
self.textoBar = Label(window3, text="Doing stuff, please, wait 5 seconds")
self.textoBar.grid(row=0, column=0, pady=(5,5))
self.progressbar = ttk.Progressbar(window3, orient = HORIZONTAL, mode = 'indeterminate',length=250)
self.progressbar.grid(row=1, column=0, pady=(5,5))
self.progressbar.start()
# wait 10 seconds
self.progressbar.stop()
window3.destroy()
提前致谢。
答案 0 :(得分:3)
使用after
安排将来运行的功能。第一个参数是以毫秒为单位的时间量,第二个参数是可调用函数。
def stop_progressbar(self):
self.progressbar.stop()
self.after(10000, self.stop_progressbar)
当然,您需要以类似的方式或window3.destroy
函数调用stop_progressbar
函数,以便在系统等待停止进度条时它不会运行。