Я работаю над графической программой 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()
Когда я запускаю его и пытаюсь выйти из программы, щелкнув по экрану, она работает нормально и завершает работу, но когда я нажимаю c и очищаю экран, то, если я попытаюсь выйти, щелкнув мышью, ничего не произойдет.
screen.clearscreen()
полностью сбрасывает окно. Это включает в себя удаление всех изменений, внесенных с помощью exitonclick
. Самое простое решение — просто снова вызвать exitonclick
в вашей пользовательской функции:
from turtle import Turtle, Screen
rem = Turtle()
screen = Screen()
rem.fd(70)
def clear():
screen.clearscreen()
screen.exitonclick()
screen.listen()
screen.onkey(fun=clear,key = "c")
screen.exitonclick()