Отвечая на несколько щелчков мыши, чтобы получить другой вывод - Tkinter - PullRequest
0 голосов
/ 26 апреля 2019

Я работаю над проблемой, требующей от меня создания графического интерфейса пользователя (в Tkinter), который отображает другое слово в метке (ссылка из списка) при каждом нажатии кнопки.

Я пробовал исследовать и нашел похожие проблемы, но пока не нашел работающего решения.Я пробовал циклы «для каждого» и «пока» и «если», но не смог заставить код работать правильно.

the_window.counter = 0

if the_window.counter == 0:
    top_label['text'] = words [0]
    the_window.counter + 1
elif the_window.counter == 1:
    top_label['text'] = words [1]
    the_window.counter + 1

код, показанный выше, производит первое слово втолько список, и несколько кликов не имеют никакого эффекта.У кого-нибудь есть какие-либо идеи?Спасибо.

1 Ответ

0 голосов
/ 26 апреля 2019

Вам необходимо сохранить глобальный счетчик и обновлять его при каждом нажатии.

Следующий код иллюстрирует метод:

# initialized to -1, so that the first time it is called
# it gets set to zero
the_window_counter = -1

def handle_click():
    global the_window_counter
    the_window_counter += 1
    try:
        top_label.configure(text=words[the_window_counter])
    except IndexError:
        top_label.configure(text="no more words")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...