【问题标题】:Turtle screen click doesn't work with a while loop龟屏点击不适用于while循环
【发布时间】:2019-04-24 17:01:33
【问题描述】:

当我运行程序时,它开始打印 0。当我点击乌龟屏幕时,它进入无响应模式。

我已经尝试将while True 放入函数中。我还尝试将onscreenclick 放在循环之后。

from turtle import*
v=0
def g(x,y):
    global v
    v=v+5
onscreenclick(g)
while True:
    print(v)

我预计它会在第一次点击后开始打印 5,在第二次点击后开始打印 10,但是在继续打印时海龟会进入无响应模式。

【问题讨论】:

    标签: python onclick turtle-graphics


    【解决方案1】:

    整个程序在乌龟方面都是错误的。但是,我将保留该讲座并简单地说不要在像海龟这样的基于事件的世界中使用while True:。而是使用ontimer 事件:

    from turtle import *
    
    v = 0
    
    def g(x, y):
        global v
        v += 5
    
    onscreenclick(g)
    
    def repeat():
        print(v)
        ontimer(repeat, 100)
    
    repeat()
    
    mainloop()
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-06-07
      • 2015-08-09
      • 1970-01-01
      • 2012-06-25
      • 2014-09-24
      • 2015-12-17
      • 1970-01-01
      相关资源
      最近更新 更多