Harshika Varadhan via Python-list wrote: > Thank you for your response. I apologize for that, this is my first time > posting so I wasn't sure how to copy my code! I figured out that using the > clear() method works for clearing the turtle window after drawing the game > board, but now I am trying to figure out how to make the program wait a > few seconds or wait for the user to press a key before clearing the turtle > window (not closing the window, just clearing it). Is there any way to do > this?
I experimented a bit and found the Screen.ontimer() and onkey() methods. Those take a function (a "callback") that will be executed after a certain time or when the specified key is pressed. Here are two simple example scripts: demo_turtle_timer.py # Draw a square, then remove it after two seconds import turtle def draw_board(): myturtle.showturtle() # draw a square # replace with your code for i in range(4): myturtle.forward(100) myturtle.right(90) def clear_board(): myturtle.clear() myturtle.hideturtle() myturtle = turtle.Turtle() screen = turtle.Screen() draw_board() # clear board after 2 seconds screen.ontimer(clear_board, 2000) screen.mainloop() demo_turtle_key.py # Hit d to draw a square, then hit c to remove it import turtle def draw_board(): myturtle.showturtle() # draw a square # replace with your code for i in range(4): myturtle.forward(100) myturtle.right(90) def clear_board(): myturtle.clear() myturtle.hideturtle() myturtle = turtle.Turtle() screen = turtle.Screen() # invoke clear_board() when the c key is pressed screen.onkey(clear_board, "c") # invoke draw_board() when the d key is pressed screen.onkey(draw_board, "d") screen.listen() screen.mainloop() -- https://mail.python.org/mailman/listinfo/python-list