tkinter的传递参数问题。。。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了tkinter的传递参数问题。。。相关的知识,希望对你有一定的参考价值。

我想要右键第一个框输出b1,右键第二个框输出b2,这个i怎么传不进去啊??? from tkinter import * global b1 i=0 root=Tk() root.geometry('600x550') t1=Frame(root,width=300,height=300,bg="red") t1.pack() t2=Frame(root,width=30,height=30,bg="black") t2.pack() def xin(a): print(a) b1=Entry(t1,width=15,bg="red") b1.pack() b2=Entry(t1,width=15) b2.pack() menubar=Menu(root,tearoff=0) def popup(c,m): global i menubar.post(c.x_root,c.y_root) i=m b1.bind(" ",lambda c=0,m="b1":popup(c,m)) b2.bind(" ",lambda c=0,m="b2":popup(c,m)) menubar.add_command(label=['python'],command=lambda a=i:xin(a)) root.mainloop()

参考技术A 你要传什么?
b1.bind("
",lambda
c=0,m="b1":popup(c,m))
bind的时候你已经传了固定的值"b1"给popup(c,m)

以上是关于tkinter的传递参数问题。。。的主要内容,如果未能解决你的问题,请参考以下文章

无法从tkinter widget.after函数传递参数

3.8 tkinter 事件绑定的参数传递

python tkinter, 通过lambda表达式传递参数到按钮的点击事件函数

Tkinter 按钮回调缺少它包含的参数[重复]

Tkinter Python程序中函数参数的名称错误

python tkinter button中的command能否直接给变量赋值?