我有一个for循环,它根据列表的长度compkeys创建大量的按钮(在tkinter中)。当我制作每个按钮时,它会被赋予一个以前制作的函数,它接受一个输入。我试图使函数的输入特定于for循环的迭代。例如,在循环中创建的第一个按钮应该将列表comp keys中的第一个项目作为其功能的输入。在
但是,每个按钮只接收最终值x的输入,而不是x的值,这取决于循环的重复次数。感谢您的帮助:)
import tkinter
compkeys = [2017onsc, 2017onwat]
for x in range(len(compKeys)):
compButton = Button(root, text = compKeys[x], command=lambda: compBuDef(compKeys[x]))
compButton.place(x=x * 100 + 200, y=300)
必须通过lambda函数传递参数:
或者更好,迭代元素:
^{pr2}$相关问题 更多 >
编程相关推荐