Animation de gauche à droite et de droite à gauche d'une image
Bonjour à tous,
J'ai une image .gif que je souhaite déplacer de gauche à droite dans une fenêtre tkinter, puis arrivée en bout de fenêtre je voudrai que l'image rebrousse chemin, donc que l'image fasse un aller-retour tout en restant sur la même ligne.
J'ai réussi à réaliser la fonction déplacement (déplacement1) pour l'aller de gauche à droite de l'image, mais quand j'insère dans le script une deuxième fonction déplacement (déplacement2) pour simuler le retour de l'image, ça plante ! Il n'y a même plus d'aller....
Voici ci-dessous mon script. Pouvez-vous m'aider à résoudre mon problème ? Que dois-je modifier dans mon programme pour observer l'aller ET le retour de mon image dans la fenêtre tkinter ? Merci.
Code:
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 44 45
|
from tkinter import *
tk = Tk()
Height=500
Width=800
def deplacement1():
img_coords = canvas.coords(image)
img_width = img_2.width()
img_height = img_2.height()
if img_coords[0] + img_width <= 800:
canvas.move(image, 5, 0)
tk.after(40, deplacement1)
def deplacement2():
img_coords = canvas.coords(image)
img_width = img_2.width()
img_height = img_2.height()
if img_coords[0] + img_width !=0:
canvas.move(image, -5, 0)
tk.after(40, deplacement2)
canvas= Canvas(tk, width = Width, height = Height)
canvas.pack()
imgfile = "/Users/OLIVIER/Desktop/serpent2.png"
img= PhotoImage(file=imgfile)
img_2 = img.subsample(2,2)
image = canvas.create_image(50,200, image=img_2)
deplacement1()
deplacement2()
tk.mainloop() |