无法在我的 Tkinter 中显示我的海龟对象 canvas
Can't display my turtle object in my Tkinter canvas
我是 Python 的新手。我想在 Tkinter 中的 canvas 顶部显示一个乌龟对象。我不确定为什么对象没有显示。
我使用 RawTurtle()
是为了使用 Tkinter canvas 作为屏幕。
root =tk.Tk()
outercanvas = Canvas(root, width=900, height=800, bg='#00ffff')
outercanvas.pack(expand=Y,fill=BOTH)
innercanvas = Canvas(outercanvas, width=680, height=700)
outercanvas.create_window(100, 40, anchor=NW, window=innercanvas)
bg = tk.PhotoImage(file="level2.png")
innercanvas.create_image(-5, 0, image = bg, anchor=NW)
bob = turtle.RawTurtle(innercanvas)
我希望乌龟出现在 canvas 的顶部,以便我稍后可以对其进行操作。
我错过了什么?
您的背景图片和乌龟似乎有冲突。改用这种方式试试:
import tkinter as tk
from turtle import RawTurtle, TurtleScreen
root = tk.Tk()
outercanvas = tk.Canvas(root, width=900, height=800, bg='#00ffff')
outercanvas.pack(expand=tk.Y, fill=tk.BOTH)
innercanvas = tk.Canvas(outercanvas, width=680, height=700)
outercanvas.create_window(100, 40, anchor=tk.NW, window=innercanvas)
screen = TurtleScreen(innercanvas)
screen.bgpic("level2.gif")
bob = RawTurtle(screen)
bob.circle(100)
screen.mainloop()
请注意,我必须制作并使用 "level2.gif" 才能正常工作,但您可能有一个更新的底层 tkinter 和 turtle,它接受 PNG 文件。
我是 Python 的新手。我想在 Tkinter 中的 canvas 顶部显示一个乌龟对象。我不确定为什么对象没有显示。
我使用 RawTurtle()
是为了使用 Tkinter canvas 作为屏幕。
root =tk.Tk()
outercanvas = Canvas(root, width=900, height=800, bg='#00ffff')
outercanvas.pack(expand=Y,fill=BOTH)
innercanvas = Canvas(outercanvas, width=680, height=700)
outercanvas.create_window(100, 40, anchor=NW, window=innercanvas)
bg = tk.PhotoImage(file="level2.png")
innercanvas.create_image(-5, 0, image = bg, anchor=NW)
bob = turtle.RawTurtle(innercanvas)
我希望乌龟出现在 canvas 的顶部,以便我稍后可以对其进行操作。
我错过了什么?
您的背景图片和乌龟似乎有冲突。改用这种方式试试:
import tkinter as tk
from turtle import RawTurtle, TurtleScreen
root = tk.Tk()
outercanvas = tk.Canvas(root, width=900, height=800, bg='#00ffff')
outercanvas.pack(expand=tk.Y, fill=tk.BOTH)
innercanvas = tk.Canvas(outercanvas, width=680, height=700)
outercanvas.create_window(100, 40, anchor=tk.NW, window=innercanvas)
screen = TurtleScreen(innercanvas)
screen.bgpic("level2.gif")
bob = RawTurtle(screen)
bob.circle(100)
screen.mainloop()
请注意,我必须制作并使用 "level2.gif" 才能正常工作,但您可能有一个更新的底层 tkinter 和 turtle,它接受 PNG 文件。