Кнопка Tkinter работает только один раз при использовании списка - PullRequest
1 голос
/ 04 мая 2020

Я пытаюсь использовать кнопку для прокрутки списка. Он работает один раз, но не реагирует ни на какие другие нажатия.

cards = ["2 of Diamonds", "3 of Diamonds"] #etc (don't want it to be too long)
current = 0
def next():
   current=+1
   print("\"current\" variable value: ", current)
   card.config(text=cards[current])
next = Button(text="⇛", command=next, fg="White", bg="Red", activebackground="#8b0000", activeforeground="White", relief=GROOVE).grid(column=2, row=1)

Есть предложения?

1 Ответ

1 голос
/ 04 мая 2020

current - это локальная переменная, которую вы инициализируете для 1 каждый раз, когда вызывается функция.

Вам нужно сделать две вещи:

  • Объявить current как глобальный
  • правильно увеличить его (+= вместо =+)

Пример:

def next():
    global current
    current += 1
    ...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...