Какая кнопка вызвала функцию
У меня есть окно tkinter. В нем создано много кнопок(btn1,btn2,btn3...), у которых при нажатии вызывается одна и та же функция. Как функции понять, какой кнопкой она была вызвана? К примеру, изменить текст кнопки
def test:
...[“text”] = “Clicked!”
## вместо точек должна быть нажатая кнопка
btn1 = Button(text=“”,command=test)
btn2 = Button(text=“”,command=test)
Ответы (1 шт):
Автор решения: S. Nick
→ Ссылка
Как вариант:
from tkinter import *
root = Tk()
def test(btn):
print(f'def test: {btn["text"]}')
btn["text"] = "Clicked!"
btn1 = Button(root, text="Btn1")#.grid(row=0, sticky=W)
btn1.config(command=lambda: test(btn1))
btn1.grid(row=0, sticky=W)
btn2 = Button(root, text="Btn2")
btn2.config(command=lambda: test(btn2))
btn2.grid(row=1, sticky=W)
root.mainloop()
