是否可以将小部件作为参数发送给任何函数?这样:
l=Listbox(root,selectmode=MULTIPLE)
def SelectLB(lb):
for i in range(lb["menu"].index("end")):
l.select_set(i)
MyButton1=Button(root,text="MB1",command= lambda: SelectLB(l))
谢谢。
答案 0 :(得分:2)
您问题的答案是肯定的,您可以在Python中的任何位置发送任何内容(不考虑酸洗和多处理)。似乎在询问是否可以使用预定义的参数调用按钮命令函数。这也是可能的:
MyButton1=Button(root, text="MB1", command=lambda l=l: SelectLB(l))
在这里,您正在将当前范围内的默认参数l
设置为l
。这是一种封闭方式,可以确保每次通过按钮时都使用l
。