画完Python龟,点击鼠标,清除屏幕和红色

2024-06-12 14:24:29 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用python turtle绘制一个五星图,但是我需要清除屏幕并在单击后重新绘制它。 所以这样的过程:

空白屏幕

  1. 点击鼠标
  2. 开始画星星
  3. 完成
  4. 点击鼠标
  5. 清除屏幕并重新绘制

谢谢

import turtle
wn = turtle.Screen()

tess = turtle.Turtle()
tess.hideturtle()

tess.left(36)
tess.forward(100)
for a in range(4):
    tess.left(144)
    tess.forward(100)

Tags: importfor屏幕过程绘制鼠标leftscreen
1条回答
网友
1楼 · 发布于 2024-06-12 14:24:29

要想像鼠标单击一样工作,必须在(无限)循环中运行海龟。现在,它将相应地监听events&;进程。

要运行这样的循环,请执行wn.mainloop()

有关所有海龟的详细信息,请转到这里-http://docs.python.org/3.1/library/turtle.html#turtle.clear

给你。大部分的解释都是相应的。

import turtle
wn = turtle.Screen()

tess = turtle.Turtle()

def draw(x, y): # x, y are mouse position arguments passed by onclick()

    tess.clear() # Clear out the drawing (if any)
    tess.reset() # Reset the turtle to original position
    tess.hideturtle()

    tess.left(36)
    tess.forward(100)
    for a in range(4):
        tess.left(144)
        tess.forward(100)
    tess.right(36) # to go to original place

draw(0, 0) # Draw the first time

wn.onclick(draw) # Register function draw to the event mouse_click
wn.onkey(wn.bye, "q") # Register function exit to event key_press "q"

wn.listen() # Begin listening to events like key_press & mouse_clicks
wn.mainloop()

相关问题 更多 >