使用for循环创建带有tkinter的按钮时,可以通过lambda表达式传递参数来确定被点击的是哪一个按钮。具体步骤如下:
import tkinter as tk
window = tk.Tk()
def button_click(index):
print("Button", index, "clicked!")
buttons = []
for i in range(5):
button = tk.Button(window, text="Button " + str(i), command=lambda index=i: button_click(index))
button.pack()
buttons.append(button)
在上述代码中,通过lambda表达式将按钮的索引作为参数传递给button_click函数。这样,当按钮被点击时,对应的索引值将作为参数传递给button_click函数。
window.mainloop()
完整的示例代码如下:
import tkinter as tk
def button_click(index):
print("Button", index, "clicked!")
window = tk.Tk()
buttons = []
for i in range(5):
button = tk.Button(window, text="Button " + str(i), command=lambda index=i: button_click(index))
button.pack()
buttons.append(button)
window.mainloop()
这样,当任何一个按钮被点击时,button_click函数将会打印出被点击按钮的索引。
推荐的腾讯云相关产品:腾讯云云服务器(CVM),产品介绍链接地址:https://cloud.tencent.com/product/cvm
领取专属 10元无门槛券
手把手带您无忧上云