将参数传递给 Tkinter 中的按钮命令
在 Tkinter 中创建按钮时,将参数传递给命令函数非常有用。提供的代码:
import Tkinter as Tk win = Tk.Toplevel() frame = Tk.Frame(master=win).grid(row=1, column=1) button = Tk.Button(master=frame, text='press', command=action)
其中action是按下按钮时调用的方法,建议可以将参数直接作为参数传递给按钮的命令:
button = Tk.Button(master=frame, text='press', command=action(someNumber))
但是,这将立即执行操作,使按钮无用。要解决此问题:
使用 Lambda 的解决方案
lambda 允许在没有显式包装方法或修改操作的情况下进行参数绑定:
button = Tk.Button(master=frame, text='press', command= lambda: action(someNumber))
此绑定有效地传递参数并确保按下按钮时正确调用操作。
以上是如何将参数传递给 Tkinter 按钮命令而不提前执行?的详细内容。更多信息请关注PHP中文网其他相关文章!