【发布时间】:2023-03-11 17:35:01
【问题描述】:
我是 Python 编程新手,我正在学习如何创建用户界面。我想创建一个非常基本的界面,它具有以下流程:使用 while 循环,界面显示包含在问题列表中的所有问题。每次提出问题时,问题下方都会出现两个按钮(是-否)。只有当其中一个被点击时,界面才会显示下一个问题。 我在这里附上我尝试过的代码。
import tkinter as tk
questions=['Question 1','Question 2','Question 3','Question 4', 'Question 5']
root = tk.Tk()
root.minsize(300, 300)
answers=['Yes','No']
b_list = []
def ask():
count=0
while count<len(questions):
lab=tk.Label(root,text=questions[count])
lab.pack()
count+=1
for i in range(2):
b = tk.Button(root, text = answers[i],command=ask)
b.grid(row = 0, column = i)
b_list.append(b)
root.mainloop()
这样的代码根本不起作用。我还想我在 while 循环中犯了一个错误,要求显示所有问题,而不是一次显示一个。任何想法让这样的代码工作? 感谢您的宝贵时间!
【问题讨论】:
-
首先,直到 while 循环结束,按钮才会显示。所以你需要将 for 循环移动到你的 while 循环中。
标签: python button tkinter while-loop