【问题标题】:Pass a parameter from a listbox/button to a function in Tkinter将参数从列表框/按钮传递给 Tkinter 中的函数
【发布时间】:2017-09-09 12:27:32
【问题描述】:

在学习 Tkinter 时度过了一段可怕的时光,在我看来,当你让按钮执行一个函数 ...command=do_this) 时,该命令不能有任何参数,它只能执行一个函数。

我想将参数传递给do_this() 以根据输入赋予它功能,例如do_this(parameter)。但是按钮的命令功能不使用函数名称末尾的括号,并且似乎不支持参数。

我该如何解决这个问题?该程序的预期用途是根据 csv 文件中的不同数据组生成频率直方图,其中通过列表框选择组,然后通过按下按钮生成直方图。

【问题讨论】:

  • 研究lambdafunctools.partial

标签: python tkinter listbox


【解决方案1】:

在您的小部件的调用中,插入
command=lambda parameter1=value,parameter2=value,etc:name(parameters)

例如,如果你想要一个按钮来执行一个函数 do_this(a) 参数 a 设置为 5 command=lambda a=5:do_this(a)

【讨论】:

    猜你喜欢
    • 2021-07-16
    • 1970-01-01
    • 1970-01-01
    • 2020-04-26
    • 2021-01-20
    • 2022-11-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多