有没有办法在Turtle模块中禁用窗口大小调整? E.G - 禁用最大化和最小化按钮并禁用将窗口拖出或移入的功能。谢谢!
答案 0 :(得分:2)
还有另一种方法,它有点“ hacky”,但对于已经使用TurtleScreen
而不是RawTurtle
编写的项目来说效果很好。它实际上是单线的:
screen = turtle.Screen()
# ...
screen.cv._rootwindow.resizable(False, False)
这将访问turtle
创建的可滚动画布对象的根窗口,并在其上调用resizable
方法。不过,这没有记录-可能会产生意外的行为。
作为一般说明:每当您想在tkinter
程序中使用turtle
的功能而找不到turtle
的方法时,只需选中turtle
's sources,弄清楚turtle
如何抽象出tkinter
对象(在这种情况下像canvas
)并直接在该对象上使用适当的方法。可能并非一直都有效-但大多数情况下,您将能够实现所需的功能。
答案 1 :(得分:0)
Python turtle建立在tkinter之上。当您运行乌龟模块 standalone 时,它将创建一个tkinter窗口,使用可滚动的画布对其进行分层,然后包装在一个屏幕对象中,该对象为使用乌龟提供了很多便利。但是您可以改为运行 embedded 的turtle模块,即,构建所需的任何tkinter窗口并在其中运行turtle。
这是一个非常简单的示例,其中的窗口带有不可调整大小的海龟绘图:
from tkinter import *
from turtle import RawTurtle
root = Tk()
root.resizable(False, False)
canvas = Canvas(root)
canvas.pack()
turtle = RawTurtle(canvas)
turtle.circle(10)
root.mainloop()