我正在开发一个 Python Turtle 图形程序,我正在尝试使用
exitonclick
方法在单击窗口时关闭窗口。但是,它似乎不起作用。
from turtle import Turtle, Screen
rem = Turtle()
screen = Screen()
rem.fd(70)
def clear():
screen.clearscreen()
screen.listen()
screen.onkey(fun=clear,key = "c")
screen.exitonclick()
当我运行它并尝试通过单击屏幕退出程序时,没有任何反应。
你的代码中
screen.exitonclick()
的位置是正确的,但是它可能因为你的程序卡在了
screen.listen()
中而无法执行。
screen.listen()
会让你的程序持续监听键盘事件,直到窗口关闭。
为了解决这个问题,你需要把
screen.exitonclick()
放到
screen.listen()
之后,这样程序就能同时监听键盘事件和鼠标点击事件。
修改后的代码如下:
from turtle import Turtle, Screen
rem = Turtle()
screen = Screen()
rem.fd(70)
def clear():
screen.clearscreen()
screen.listen() # 开始监听键盘事件
screen.onkey(fun=clear,key = "c")
screen.exitonclick() # 监听鼠标点击事件,点击关闭窗口
这样修改之后,你的程序就能正常响应鼠标点击事件,并在你点击窗口时关闭了。
标签:python,turtle-graphics From: 78774606