tkinter中两个命令的相同绑定

时间:2016-06-04 11:11:12

标签: python tkinter bind

所以我试图使用相同的.bind(“)来显示两个数字:

def distance(event):
    dchain.configure(text = "distance = " + str(sqrt((x1-z1)**2 + (y1-v1)**2) -  30))

def gravitationalForce(event):
    fchain.configure(text = "force = " + str(pow(6.6710, -11.0)*(m1*m2/pow((sqrt((x1-z1)**2 + (y1-v1)**2) -  30), 2))))

win1=Tk()
win1.bind("<ButtonPress>", distance)
win1.bind("<ButtonPress>", gravitationalForce)
dchain = Label( win1)
dchain.grid(row=10, column=1, sticky=W)
fchain = Label( win1)
fchain.grid(row=11, column =1, sticky = W)

一个似乎取消了另一个,我尝试使用a和一个有效但现在我想添加更多选项,并想知道它是如何工作的。

1 个答案:

答案 0 :(得分:3)

只需将功能包装成一个。您甚至可以使用lambda表达式内联:

...
win1=Tk()
win1.bind("<ButtonPress>", lambda event: distance(event), gravitationalForce(event))
dchain = Label( win1)
...