首页 > 后端开发 > Python教程 > 如何将参数传递给 Tkinter 按钮命令而不提前执行?

如何将参数传递给 Tkinter 按钮命令而不提前执行?

Barbara Streisand
发布: 2024-12-21 03:12:10
原创
804 人浏览过

How Can I Pass Arguments to Tkinter Button Commands Without Premature Execution?

将参数传递给 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中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板