乌龟文字闪烁



当我试图将文本放在python-turtle模块中的乌龟上时,它会闪烁。有什么解决方案吗?

import turtle
s = turtle.Screen()
s.setup(width=500,height=600)
c = turtle.Turtle()
c.shapesize(stretch_len=5,stretch_wid=5)
c.goto(0,0)
c.shape("square")
pen = turtle.Turtle()
pen.hideturtle()
pen.goto(0,0)
pen.color("red")
while True:
pen.write("hello!")
s.update()

虽然我没有在屏幕上看到闪烁,但我猜你的问题与这个坏习惯有关:

while True:
# ...
s.update()

我们既不需要while True:(它在像turtle这样的事件驱动环境中没有位置(,也不需要对update()的调用(如果之前没有对tracer()的调用,则不需要它(。让我们把它重写为海龟代码:

from turtle import Screen, Turtle
screen = Screen()
screen.setup(width=500, height=600)
turtle = Turtle()
turtle.hideturtle()
turtle.shapesize(5)
turtle.shape('square')
turtle.stamp()  # stamp a square so we can reuse turtle
pen = Turtle()
pen.hideturtle()
pen.color("red")
pen.write("Hello!", align='center', font=('Arial', 16, 'normal'))
screen.exitonclick()

这能解决你的问题吗?

最新更新