更改Turtle Graphics窗口的屏幕位置?

时间:2018-01-03 16:19:39

标签: python turtle-graphics

是否可以在屏幕上更改龟控制台的位置?

我的主要目标是编写可以移动窗口的代码,这就是全部。

我在Windows 10下使用Python 3.4.0。

如果需要任何额外信息,请询问。

2 个答案:

答案 0 :(得分:0)

是。您需要获取包含乌龟正在使用的Tkinter Canvas作为其TurtleScreen的根窗口。拥有该窗口后,您可以更改其geometry

这是一个简单的演示。

import turtle

turtle.setup(width=0.5, height=0.5)
screen = turtle.Screen()

width, height = screen.window_width(), screen.window_height()
canvas = screen.getcanvas()

left, top = 30, 100
geom = '{}x{}+{}+{}'.format(width, height, left, top)
canvas.master.geometry(geom)

t = turtle.Turtle()
turtle.exitonclick()

答案 1 :(得分:0)

为什么人们总是在阅读海龟文档之前会跳转到tkinter

是的,你可以使用你用来调整它的相同setup()方法来设置海龟图形窗口的屏幕位置:

from turtle import Turtle, Screen

def animate():
    global offset

    screen.setup(width=0.333, height=0.333, startx=offset, starty=offset)

    turtle.dot(offset)

    offset += 10

    if offset < 300:
        screen.ontimer(animate, 100)

screen = Screen()

turtle = Turtle()

offset = 30

animate()

screen.exitonclick()

startx,如果为正,则是屏幕左边缘的起始位置(以像素为单位),如果为负,则为右边缘的起始位置。同样,starty,如果是正数,则是从屏幕上边缘开始的起始位置,如果是负数,则来自下边缘。默认情况下,窗口以屏幕为中心。

您的标题询问屏幕上 Turtle Graphics 窗口的位置,但您的问题正文询问 Turtle Console 即可。这些可能被视为两个不同的窗口。

  

我的主要目标是编写可以移动窗口的代码

我不知道你是想要设置窗口的初始位置还是实际在窗口周围移动窗口,所以我重写了我的例子来演示后者。