Задать вопрос
@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)

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

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

Похожие вопросы