[英]Python: How to reset the turtle graphics window
我正在制作一个使用乌龟牌的二十一点游戏,每次我玩一只手乌龟时,只打印最后一场比赛而不是清除窗口。 是否有一种方法可以在调用时关闭窗口,或者还有另一个为什么要这样做?
我想澄清各种海龟函数的作用,因为在此讨论中存在误解,包括在当前接受的答案中,因为方法名称本身可能会造成混淆:
turtle.mainloop()
又名turtle.Screen().mainloop()
将控制权交给turtle.Screen().mainloop()
的事件循环。 通常,缺少turtle.Screen().mainloop()
(或turtle.Screen().exitonclick()
等)会导致窗口关闭,因为程序将结束,关闭所有内容。 除非该脚本是从 Python IDLE -n 中运行的,否则该语句或其变体之一应该是海龟图形程序中的最后一条语句。
turtle.done()
(不关闭窗口也不重置任何东西。) turtle.mainloop()
同义词
turtle.clear()
删除这个海龟绘制的所有东西(不仅仅是最后一个东西)。 否则不会影响乌龟的状态。
turtle.reset()
一个turtle.clear()
,然后重置这个turtle 的状态(即方向、位置等)
turtle.clearscreen()
aka turtle.Screen().clear()
删除所有绘图和所有海龟,将窗口turtle.Screen().clear()
原始状态。
turtle.resetscreen()
又名turtle.Screen().reset()
将屏幕上的所有海龟重置为它们的初始状态。
turtle.bye()
aka turtle.Screen().bye()
关闭海龟图形窗口。 在调用此命令后,我看不到使用任何海龟图形命令的方法。
turtle.exitonclick()
aka turtle.Screen().exitonclick()
绑定屏幕点击事件后做一个turtle.Screen().bye()
调用turtle.Screen().mainloop()
不清楚您是否可以从乌龟内部关闭并重新打开图形窗口,而无需下降到支持乌龟的 tkinter 级别(和 Zelle 的 graphics.py)
为了在您的二十一点游戏中开始新手,我猜turtle.reset()
或turtle.resetscreen()
是您最好的选择。
使用乌龟,它是turtle.done()
。
如果你使用python graphics
我推荐John Zelle的图形库 。 要关闭窗口,请使用window.close()
。 如果您有兴趣,我已经链接了graphics
库的文档。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.