首页 > 解决方案 > 如何将迭代值作为参数发送到 lambda 函数?

问题描述

我在 Tkinter 上构建了一个带有复选框的下拉菜单,当我迭代元素时,我尝试在循环中初始化复选框,并且对于每个复选框,我想要不同 lambda的函数,这些函数使用我在特定迭代中获得的元素。

  mb = Menubutton(self, text="Select", elief=RAISED)
  mb.menu = Menu(mb,tearoff = 0)
  mb["menu"] = mb.menu
  for elem in self.files:
      mb.menu.add(checkbutton(label = elem, variable = elem, command=lambda: print(elem)))

我得到的输出是一个空字符串。

标签: pythontkinter

解决方案


推荐阅读