@Alexis_D

Как получить текст кнопки, выведенной из массива?

Доброго времени суток. Такая проблема, есть массив данных, допустим, состоящий из 3 элементов, при переборе его по циклу for, делаю text равный элементу массива:
arr = ["a", "b", "c"]
for i in arr:
    btn = Button(root, text=i[0])
    btn.bind('<Double-1>', test)

И при двойном нажатии вывожу текст кнопки
def test(event):
    print(btn)

Но выводит только текст последней кнопки, вне зависимости какая кнопка была нажата, как исправить? Заранее спасибо!
  • Вопрос задан
  • 249 просмотров
Решения вопроса 1
@MadridianFox
Web-программист, многостаночник
Внимательно посмотрите на функцию test. Она принимает event, но печатаете вы btn. Откуда там btn? Информацию о кнопке вы должны брать из event, а переменная btn скорее всего содержит то, что в неё было записано на последней итерации цикла.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
23 нояб. 2024, в 01:31
1000 руб./за проект
23 нояб. 2024, в 00:16
2000 руб./за проект