我有一些这样的代码
from Tkinter import *
master = Tk()
def oval_mouse_click(event):
print "in oval"
def canvas_mouse_click(event):
print "in canvas"
w = Canvas(master, width = 800, height = 600)
uid = w.create_oval(390, 290, 410, 310, fill='blue')
w.tag_bind(uid, "<Button-1>", lambda x: oval_mouse_click(x))
w.bind("<Button-1>" , canvas_mouse_click)
w.pack()
mainloop()
当我单击画布时,控制台中有“画布中”消息。当我单击椭圆形时,我有两条消息“椭圆形”和“画布中”,但我只想收到第一条消息。有什么方法可以阻止事件引发?
我可以用一些全局标志来完成这项任务,但我认为 Tkl 应该有更自然的方式。