Animating Canvas objects

Tkinter's Canvas widget doesn't have a built-in animation framework, but we can still create simple animations by combining its move() method with our understanding of the event queue.

To demonstrate this, we'll create a bug race simulator, in which two bugs (represented by colored circles) will race haphazardly toward a finish line on the other side of the screen. Like real bugs, they won't have any notion that they're in a race and will move randomly, the winner being whichever bug incidentally hits the finish line first.

To begin, open a new Python file and start with a basic boilerplate as follows:

import tkinter as tk

class App(tk.Tk):
    def __init__(self):
        super().__init__()
App().mainloop()

Get Python GUI Programming with Tkinter now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.