带滚动条的Python Turtle窗口
我刚开始学Python,写了一个简单的程序,使用turtle图形库来画一个分形图形。我的问题是,turtle窗口没有滚动条,所以如果图形太大,窗口就看不全。虽然我在网上查了很多,但没有找到解决办法。有没有人能帮帮我?
2 个回答
4
我终于在这个网站上找到了一些代码,地址是 http://www.python-forum.de/viewtopic.php?f=1&t=24823&start=0,这个代码可以让海龟图形有一个可以滚动的画布:
import turtle
import Tkinter as tkinter
root = tkinter.Tk()
root.geometry('500x500-5+40') #added by me
cv = turtle.ScrolledCanvas(root, width=900, height=900)
cv.pack()
screen = turtle.TurtleScreen(cv)
screen.screensize(2000,1500) #added by me
t = turtle.RawTurtle(screen)
t.hideturtle()
t.circle(100)
root.mainloop()
5
你不需要直接调用Tkinter的函数来在turtle
中添加滚动条。你只需要调用turtle.screensize
,并设置一个比显示窗口大至少一个维度的屏幕大小。我觉得最方便的做法是先以默认大小打开显示窗口,让用户根据需要调整大小。
下面是一个简单的演示:
import turtle
win_width, win_height, bg_color = 2000, 2000, 'black'
turtle.setup()
turtle.screensize(win_width, win_height, bg_color)
t = turtle.Turtle()
#t.hideturtle()
#t.speed(0)
t.color('white')
for _ in range(4):
t.forward(500)
t.right(90)
turtle.done()