Comment arrêter un traitement d'un événement ou changer la fonction qui lui est demandée?Suppression et modification d'une liaison d'événement tkinter dans python
Revised Code:
from Tkinter import *
class GUI:
def __init__(self,root):
Window = Frame(root)
self.DrawArea = Canvas(Window)
self.DrawArea.pack()
Window.pack()
self.DrawArea.bind("<Button 1>",self.starttracking)
def updatetracking(self,event):
print event.x,event.y
def finishtracking(self,event):
self.DrawArea.bind("<Button 1>",self.starttracking)
self.DrawArea.unbind("<Motion>")
def starttracking(self,event):
print event.x,event.y
self.DrawArea.bind("<Motion>",self.updatetracking)
self.DrawArea.bind("<Button 1>",self.finishtracking)
if __name__ == '__main__':
root = Tk()
App = GUI(root)
root.mainloop()
J'avais des problèmes avec unbind aussi! Vous devriez obtenir les changements fusionnés! – timeyyy
@arcra: Exécuter Python 3.5.2 sur Ubuntu 16.10 et avoir toujours le même problème que vous avez corrigé. Votre solution fonctionne toujours parfaitement car la source n'a pas encore été corrigée. Comme Arden je vous suggère de le proposer afin d'obtenir le crédit et l'avoir définitivement appliqué. –