Python Turtle - 单击事件

时间:2016-04-13 17:13:45

标签: python turtle-graphics

我目前正在使用python的Turtle Graphics制作一个程序。这是我的代码,以防你需要它

import turtle
turtle.ht()

width = 800
height = 800
turtle.screensize(width, height)

##Definitions
def text(text, size, color, pos1, pos2):
     turtle.penup()
     turtle.goto(pos1, pos2)
     turtle.color(color)
     turtle.begin_fill()
     turtle.write(text, font=('Arial', size, 'normal'))
     turtle.end_fill()

##Screen
turtle.bgcolor('purple')
text('This is an example', 20, 'orange', 100, 100)


turtle.done()

我想点击活动。因此,在写入'This is an example'文本的地方,我希望能够单击它并将其打印到控制台或更改背景。我该怎么做?

修改

我不想安装像pygame这样的东西,它必须在Turtle中制作

2 个答案:

答案 0 :(得分:1)

使用onscreenclick方法获取位置,然后在主循环中对其进行操作(打印或其他)。

import turtle as t

def main():
    t.onscreenclick(getPos)
    t.mainloop()
main()

另见:Python 3.0 using turtle.onclick 另请参阅:Turtle in python- Trying to get the turtle to move to the mouse click position and print its coordinates

答案 1 :(得分:0)

由于您的要求是在文本区域周围ls,我们需要 跟踪鼠标位置。为此,我们将函数onscreenclick绑定到screenevent。 在函数内,如果我们在文本onTextClick周围,则会调用This is an example来将背景颜色更改为turtle.onscreenclick。 您可以更改lambda函数并插入自己的函数,或者只创建外部函数并根据this documentationred内调用

我尝试尽可能少地更改您的代码。

这是一个正常运作的代码:

turtle.onscreenclick