sag*_*sag 25 python events binding arguments tkinter
widget.bind('<Button-1>',callback) # binding
def callback(self,event)
#do something
Run Code Online (Sandbox Code Playgroud)
我需要传递一个论点callback().参数是一个字典对象.
Bry*_*ley 44
您可以使用它lambda来定义匿名函数,例如:
data={"one": 1, "two": 2}
widget.bind("<ButtonPress-1>", lambda event, arg=data: self.on_mouse_down(event, arg))
Run Code Online (Sandbox Code Playgroud)
请注意,arg传入的只是一个普通的参数,您可以像使用其他所有参数一样使用它:
def on_mouse_down(self, event, arg):
print(arg)
Run Code Online (Sandbox Code Playgroud)
Phi*_*ipp 10
关于什么
import functools
def callback(self, event, param):
pass
arg = 123
widget.bind("", functools.partial(callback, param=arg))
Run Code Online (Sandbox Code Playgroud)