import tkinter as tk win = tk.Tk() can = tk.Canvas(win, width=300, height=300) strvar = tk.StringVar() lab = tk.Label(win, textvar=strvar) strvar.set("Press a key") def on_click(event=None): can.create_oval((event.x - 5, event.y - 5, event.x + 5, event.y + 5), fill="red") def on_key_down(event=None): strvar.set(event.keysym) def on_ctrl_d(event=None): top = tk.Toplevel(win) top.geometry("200x200") sv = tk.StringVar() sv.set("Hover the mouse over me") label = tk.Label(top, textvar=sv) label.bind("<Enter>", lambda e, sv=sv: sv.set("Hello mouse!")) label.bind("<Leave>", lambda e, sv=sv: sv.set("Goodbye mouse!")) label.pack(expand=1, fill=tk.BOTH) can.bind('<Button-1>', on_click) win.bind('<Control-d>', on_ctrl_d) win.bind('<KeyPress>', on_key_down) win.bind('<e>', lambda e, s=lab: lab.configure(font=(None, 18))) can.pack() lab.pack(side=tk.BOTTOM) win.mainloop()