[python] probleme avec une image et tkinter

Résolu
daphda Messages postés 3 Statut Membre -  
callmenelly Messages postés 4 Statut Membre -
Bonjour, je suis en train de faire un mastermind et je me suis fais une fonction drag and drop qui marche, quand je relache le bouton de la souris il affiche une image la ou est le curseur mais si je recommence a drage quelque chose, il la supprime pour afficher la nouvelle (je voudrais garder la vielle et rajouter la nouvelle). Voila voila si quelqu'un a une idee...
quoi qu'il en soit merci quand meme d'avoir lu jusqu'ici :)
voici la partie de mon code se chargeant de tout ca:

def clique_gauche_fin(event):
global etat,prodrag,pion
if etat==2:
blabla("fin drag")
etat=0
blabla(etat)
X=event.x
Y=event.y
blabla("coord souris :%s,%s"%(X,Y))
W=event.widget
i=0
j=0
trouvex=False
trouvey=False
while i<4 and trouvex==False:
if tx[i]<X<tx[i+1]: trouvex=True ; blabla("colonne :%s"%(i))# on verifie si on est dans une colonne et on indique laquelle
else :i=i+1
while j<10 and trouvey==False:
if ty[j]>Y>ty[j+1]: trouvey=True; blabla("range :%s"%(j))
else:j=j+1;
if trouvex==trouvey==True:

pion=ImageTk.PhotoImage(file="image\pbleu.gif")
W.create_image((tx[i]+tx[i+1])/2,(ty[j]+ty[j+1])/2,image=pion)
A voir également:

2 réponses

callmenelly Messages postés 4 Statut Membre 1
 
Bonjour!! Votre code m'interesse mais je ne comprends pas bien... Je travaille sur un projet de puzzle, et il m'est impossible de déplacer des images.. Pouvez vous m'aider svp? ( j'utilise Python 2.7 )
1
daphda Messages postés 3 Statut Membre
 
en fait c'est bon j'ai reussi a resoudre mon probleme (par chance j'etais sur une autre truc)

il suffisait de changer
pion=ImageTk.PhotoImage(file="image\pbleu.gif")
pion2=pion[quelpion-1]

au pion est une variable global et est egale a :
pion=[ImageTk.PhotoImage(file=files.cheminpion1),
ImageTk.PhotoImage(file=files.cheminpion12),
...]

class files:
cheminpion1="image\pbleu.gif"
cheminpion2="image\pjaune.gif"
...

c'est un surement un peu du bidouaillage mais au moin ca marche
0