我有这段代码可以在循环中创建一系列绑定:
from Tkinter import *
keys = {0:'m', 1:'n', 2:'o'}
def SomeFunc(event=None,number=11):
print keys[number], number
root = Tk()
field = Canvas(root, height = 200, width = 200, bg = "gray")
for i in range(2):
root.bind("<KeyPress-%c>" % keys[i],lambda ev:SomeFunc(ev,i))
field.pack()
root.mainloop()
我的问题是,当我按“m”或“n”时,函数SomeFunc
会以可变的“i”作为参数调用。我希望在我按“m”时使用 0 作为参数(使用“bind”时的数值“i”)调用它,在按“n”时使用 1。这可以做到吗?