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
| from tkinter import *
class Balle(object):
def __init__(self,boss,x,y,r):
self.boss = boss
self.x,self.y = x,y
self.balle = boss.create_oval(x-r,y-r,x+r,y+r, width=2,fill='red')
self.xMax =int(boss.cget('width'))
self.yMax =int(boss.cget('height'))
self.anim = True #interupteur d'animation
def deplacement(self):
"deplacement uniforme de la balle"
if self.anim:
if self.x > self.xMax or self.y > self.yMax :
self.anim = False
self.x = self.x+ 5
#self.y = self.y + 5
#print('x= ',self.x, 'y= ',self.y)
self.boss.move(self.balle,int(self.x),int(self.y))
print('x= ',self.x, 'y= ',self.y)
self.boss.after(1000,self.deplacement)
if __name__ == '__main__':
f= Tk()
can=Canvas(f,width=300,height=300,bg='ivory')
can.pack(padx=10, pady=10)
b1=Balle(can,10,150,5)
Button(f,text='demarrer',width=8,command=b1.deplacement).pack(side=LEFT)
f.mainloop() |
Partager