我正在解决一个问题,要求我创建一个GUI(在Tkinter中),每次按下按钮时,该GUI会在标签中显示一个不同的单词(从列表中引用)。
我尝试研究,发现了类似的问题,但是还没有找到可行的解决方案。我已经尝试了“ for each”和“ while”循环以及“ if”语句,但未能使代码正常工作。
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
上面显示的代码仅产生列表中的第一个单词,多次单击没有任何效果。有人有什么想法吗? 谢谢。
答案 0 :(得分:0)
您需要保留一个全局计数器,并在每次单击时对其进行更新。
以下代码说明了该技术:
# 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")