使用海龟模块绑定和移动画布的问题

-2 投票
1 回答
24 浏览
提问于 2025-04-13 21:16

我尝试的例子

我想用海龟模块让画布移动。 我觉得问题可能出在绑定标签上,但我找不到解决办法。

我尝试了能找到的绑定方法,但都没有成功。

1 个回答

0

我不太清楚你是想把海龟窗口在屏幕上移动,还是想在海龟窗口内移动绘图画布。如果是后者,我们可以这样做:

from tkinter import Frame, Canvas, BOTH, NW
from turtle import ScrolledCanvas, RawTurtle

class MainWindow(Frame):
    def __init__(self):
        super().__init__()
        self.pack(fill=BOTH)

        canvas = Canvas(self, width=640, height=480, bg='pink')
        canvas.pack(fill=BOTH)

        scrolled = ScrolledCanvas(canvas, width=320, height=240)

        window = canvas.create_window(50, 25, anchor=NW, window=scrolled)
        canvas.addtag_withtag('tagged', window)

        turtle = RawTurtle(scrolled)
        turtle.circle(50)

        canvas.move('tagged', 30, 30)

root = MainWindow()
root.mainloop()

关于这个概念的帮助可以参考 Python Tkinter 画布嵌套画布

这种功能需要从 tkinter 的角度来考虑,而不是海龟的。

如果你只是想把海龟的窗口在屏幕上移动,可以看看这个回答:如何改变海龟图形窗口在屏幕上的位置?

撰写回答