Le code joint dessine aléatoirement des carrés sur le canevas en utilisant la méthode "after". Je m'attendais à arrêter le dessin quand j'ai cliqué sur le bouton de la souris en utilisant la méthode "after_cancel", bu continue à dessiner ..Tkinter after_cancel en python
Voici le code.
#! /usr/bin/env python
from Tkinter import *
import time
import random
tk = Tk()
canvas = Canvas(tk, width=1920, height=1080, background="grey")
canvas.pack()
def xy(event):
xm, ym = event.x, event.y
def task():
w=random.randint(1,1000)
h=random.randint(1,1000)
canvas.create_rectangle(w,h,w+150,h+150)
def callback(event):
if True:
print("clicked2")
tk.after_cancel(task)
canvas.bind("<Button-1>",callback)
tk.after(1000,task)
tk.after(1000,task)
tk.mainloop()