0
我正在python中使用串口发送命令的GUI。在我的旧脚本中,没有gui,我在写命令之间使用了time.sleep(x)(命令成功是必要的)。现在,当我使用gui envrimont时,我无法使用睡眠,所以我以后使用。self.after不等待传递值
它运行良好,但: 我使用Tkinter为我的GUI。当我按下按钮启动时,OnButtonClickSTART在x时间后启动另一个功能。随着自我。我在每个过程之间等待x secondes。它可以工作,但是当我给这个函数赋值时,它不会等待给定的时间。
def OnButtonClickSTART(self):
print "START"
self.button1.configure(state='disabled')
self.after(1000, self.waitmore)
def waitmore(self):
value = 5
print value
self.after(10000,self.waitmuchmore(value))
def waitmuchmore(self,value):
print value
self.after(10000,self.OnButtonClickSTOP)
def OnButtonClickSTOP(self):
print "STOP"
self.button1.configure(state='normal')
这里不是一个更好的方法来执行一系列的命令,并在它们之间有一定的时间。就像睡眠一样,但可以使用1个功能,并且不会禁用gui。
THX
看来你已经在给定的时间self.after具有恒定的价值。 – Reti43