1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
| def move() :
"déplacement de la balle"
global x1,y1,dx,dy,flag
x1,y1 = x1 + dx,y1 + dy
if 125 <= x1 <= 220 and 0 <= y1 <= 95 :
dx,dy = 5,5
if 95 <= x1 <= 220 and 95 <= y1 <= 220 :
dx, dy = -5,5
if 0 <= x1 <= 95 and 125 <= y1 <= 220 :
dx,dy = -5,-5
if 0 <= x1 <= 125 and 0 <= y1 <= 125 :
dx,dy = 5,-5
can1.coords(oval1,x1,y1,x1+30,y1+30)
if flag > 0 :
fen1.after(50,move)
def stop_it():
global flag
flag = 0
def start_it() :
global flag
if flag == 0 :
flag = 1
move()
x1,y1 = 125,0
dx,dy = 5,5
flag = 0
fen1 = Tk()
fen1.title("Exercice d'animation avec tkinter")
can1 = Canvas(fen1,bg='dark grey',height=250,width=250)
can1.pack(side=LEFT,padx=5,pady=5)
oval1 = can1.create_oval(x1,y1,x1+30,y1+30,width=2,fill='pink')
Button(fen1,text='Quitter',width=8,command=fen1.quit).pack(side=BOTTOM)
Button(fen1,text='Démarrer',width=8,command=start_it).pack()
Button(fen1,text='Arrêter',width=8,command=stop_it).pack()
fen1.mainloop()
fen1.destroy() |