按下按钮后激活以下呼叫。
def ON():
print("System Initiated")
var.set("System Initiated")
AC1 = circuitD.create_oval(375,155,400,180, fill= 'green')
DCM = circuitD.create_oval(375,425,400,450, fill= 'green')
DC2 = circuitD.create_oval(367,513,392,538, fill= 'green')
DC1 = circuitD.create_oval(313,513,338,538, fill= 'green')
DC3 = circuitD.create_oval(423,513,448,538, fill= 'green')
DC4 = circuitD.create_oval(477,513,502,538, fill= 'green')
它只是在画布的不同区域绘制了6个绿色圆圈。
我想按顺序绘制它们,延迟一秒钟。我尝试在每一行之间使用time.sleep(seconds)
代码段。
def ON():
print("System Initiated")
var.set("System Initiated")
AC1 = circuitD.create_oval(375,155,400,180, fill= 'green')
time.sleep(seconds)
DCM = circuitD.create_oval(375,425,400,450, fill= 'green')
time.sleep(seconds)
DC2 = circuitD.create_oval(367,513,392,538, fill= 'green')
time.sleep(seconds)
DC1 = circuitD.create_oval(313,513,338,538, fill= 'green')
time.sleep(seconds)
DC3 = circuitD.create_oval(423,513,448,538, fill= 'green')
time.sleep(seconds)
DC4 = circuitD.create_oval(477,513,502,538, fill= 'green')
睡眠功能将整个绘图序列延迟设定的时间量,然后一次绘制所有6个圆圈。似乎睡眠功能只能正确延迟shell输出。
我的问题是,有没有办法阻止圈子出现在画布上?或者有没有办法在每个time.sleep(seconds)
之后实时更新画布?
提前谢谢。
答案 0 :(得分:0)
如果您不介意整个程序在序列中锁定,那么您可以在睡眠后添加circuitD.update()
。
否则,您将不得不使用after
调用,但这会妨碍您保持对创建对象的引用。你在使用这些参考资料的是什么?
如果您提供Minimal, Complete, and Verifiable example,我可以展示一个示例。