海龟创建一个额外的屏幕(不需要)

2024-09-22 14:23:30 发布

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

我做的屏风有一块画布,里面有一些画。我还做了一个函数,可以做一只乌龟并移动它。问题是,当海龟被创建时,它也会创建一个新窗口,海龟在其中移动。我不要第二扇窗户。有没有办法移动一只乌龟,让它出现在画布上而不创建第二个窗口?你知道吗

函数如下:

def Mueve_Carro(type):

    color = StringVar

    if tipoCarro == 1:
        type = "blue"
    elif tipoCarro == 2:
        type = "orange"
    elif tipoCarro == 3:
        type = "brown"

    ball = Turtle()
    ball.penup()
    ball.shape("circle")
    ball.shapesize(1,1,1)
    ball.color(type)
    ball.goto(-60,22)

Tags: 函数deftype画布color窗户海龟elif
1条回答
网友
1楼 · 发布于 2024-09-22 14:23:30

您使用的Turtle()类将始终自动创建一个新画布。您必须使用RawTurtle(canvas),其中canvas变量是您在此函数外创建的屏幕(因此您还需要将其作为参数传递)

所以基本上

def Mueve_Carro(type, canvas):

    #...

    ball = RawTurtle(canvas)

    #...

不管名称如何,除了画布的创建之外,RawTurtleTurtle之间没有其他区别。你知道吗

相关问题 更多 >