2016-11-14 62 views
0

我需要将参数传递给由turtle.onclick()设置的动作,而不自动激活点击。在不激活turtle.onclick的情况下传递参数(Python3海龟)

截至目前,它的功能,但它不会等待点击。代码自动运行,就好像它已被点击一样,但不会等待。

如果我拿出参数并将参数集作为一个全局变量运行它,它将起作用,但我们不应该使用全局空间除了导入龟之外的任何东西。

def click(string): 
    turtle.onclick(draw(word)) 
    turtle.mainloop() 

如果我取出(字),并将其移动到全局空间,将等待点击运行。

+0

'turtle.onclick(拉姆达X,Y:平局(字))'应该做的伎俩。 –

回答

0

以下可能会帮助您解决您的问题 - 无需更多代码,我无法根据您的具体问题编写代码。

有两个重要项目,第一个是定义click()函数中的clicked()函数,以将本地word锁定回调回。其他功能是使用onscreenclick()。如果你打算点击乌龟游标本身,继续使用onclick()。使用onscreenclick()如果你想随时随地点击屏幕上:

import turtle 

def draw(word): 
    turtle.write(word) 

def click(word): 
    def clicked(x, y): 
     draw(word) 

    turtle.onscreenclick(clicked) 

click("Possible Solution") 

turtle.mainloop() 
相关问题