我正在尝试使用 for 循环将多个编号命令添加到 Tkinter 菜单。当调用命令时,它的编号应该用作命令函数的参数。以下代码不起作用,因为 i 在调用命令时被评估,这是在循环完成之后。这意味着传递给 function1 的参数始终为 15,而我打算传递命令标签上显示的数字。有没有办法做到这一点?
注意:标签按预期工作,产生 16 个标记为 0 到 15 的选项
newMenu = Menu(menuButtonInstance)
for i in range(16):
newMenu.add_command(label = '%s'%i,
command = lambda:function1(i))
menuButtonInstance.config(menu = newMenu)
提前致谢