![](/img/trans.png)
[英]Will creating a tkinter button in a function, while using lambda as a command, function properly?
[英]Difference between using or not lambda function in python tkinter button command
在 tkinter 中使用 Button 小部件时,我有一个问题。 我是新来的。 我注意到,当我们在 Button 小部件中使用命令时,有时我们会像这样调用简单的 function 有时我们会使用 lambda function 然后我们调用它。 有什么区别?
例如:tk.Button(window, text = "Click Me,".command = myfunction) tk,Button(win,text="Result":command=lambda.result(en1.get())
我们不能在没有 lambda 的情况下使用它吗? 谢谢你。
lambda
的使用:
括号是 function 在作为没有lambda
的Button
的command
时被执行的主要原因。 如果函数(您作为command
传递给Button
)没有参数(要传递给自身),那么您可以简单地将其作为command
传递,避免使用括号()
。 因此,在这种情况下,您不需要使用lambda
。 就像在这个例子中一样: command=func
。
因此,仅当 function 有自己的参数(要传递给自己)时才需要使用lambda
。就像在这个例子中一样: command=lambda:func(a,b,c)
lambda
做什么:
parentheses()
。buttons
的情况下, lambda
基本上会延迟 function 的执行,直到用户单击按钮。 因此 function 不会被执行,它被作为command
提供给Button
。任何问题都会得到解答。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.