刷新单选按钮选择
Refreshing Radiobutton selection
我使用 tkinter 创建了一个测验,但遇到了一个小问题。在为第一个问题选择答案并单击提交后,已经从上一个问题中为下一个问题选择了相同的单选按钮。有没有可能刷新页面,这样下一个问题就没有选择的答案了?
图片显示为第一个问题选择的答案。
点击提交后,相同的单选按钮选项已被选中。
var = IntVar()
ans1 = Radiobutton(root, text=answer1[count], variable=var, value=1,
command=sel)
ans2 = Radiobutton(root, text=answer2[count], variable=var, value=2,
command=sel)
ans3 = Radiobutton(root, text=answer3[count], variable=var, value=3,
command=sel)
ans4 = Radiobutton(root, text=answer4[count], variable=var, value=4,
command=sel)
ans1.pack()
ans2.pack()
ans3.pack()
ans4.pack()
def out():
global QuestionNo,correct,incorrect,s,count
global ans1, ans3, ans3 ,ans4, correctans
# count = count + 1
answer = (ans1 or ans2 or ans3 or ans4(var.get()))
print (question[QuestionNo])
# print (answer[count])
if count != 3:
if answer == correctans :
count = count + 1
QuestionNo = QuestionNo + 1
# entry.delete(0, END)
correct = correct + 1
label.config(text = question[QuestionNo])
else:
QuestionNo = QuestionNo + 1
count = count + 1
# entry.delete(0, END)
incorrect = incorrect + 1
label.config(text = question[QuestionNo])
# answer.delete(0, END)
elif count == 3:
# entry.delete(0, END)
label.config(text = "Correct: "+str(correct) + " Incorrect: "+str(incorrect))
ans1.configure(text=str(answer1[count]))
ans2.configure(text=str(answer2[count]))
ans3.configure(text=str(answer3[count]))
ans4.configure(text=str(answer4[count]))
button = tk.Button(root,text = "Submit",command = out)
button.pack()
使用var.set(0)
重置选择。
您是否将 var 用于不同问题页面中的单选按钮?您可以对第 1 页使用 var1,对第 2 页使用 var2 以避免结转。
我使用 tkinter 创建了一个测验,但遇到了一个小问题。在为第一个问题选择答案并单击提交后,已经从上一个问题中为下一个问题选择了相同的单选按钮。有没有可能刷新页面,这样下一个问题就没有选择的答案了?
图片显示为第一个问题选择的答案。
点击提交后,相同的单选按钮选项已被选中。
var = IntVar()
ans1 = Radiobutton(root, text=answer1[count], variable=var, value=1,
command=sel)
ans2 = Radiobutton(root, text=answer2[count], variable=var, value=2,
command=sel)
ans3 = Radiobutton(root, text=answer3[count], variable=var, value=3,
command=sel)
ans4 = Radiobutton(root, text=answer4[count], variable=var, value=4,
command=sel)
ans1.pack()
ans2.pack()
ans3.pack()
ans4.pack()
def out():
global QuestionNo,correct,incorrect,s,count
global ans1, ans3, ans3 ,ans4, correctans
# count = count + 1
answer = (ans1 or ans2 or ans3 or ans4(var.get()))
print (question[QuestionNo])
# print (answer[count])
if count != 3:
if answer == correctans :
count = count + 1
QuestionNo = QuestionNo + 1
# entry.delete(0, END)
correct = correct + 1
label.config(text = question[QuestionNo])
else:
QuestionNo = QuestionNo + 1
count = count + 1
# entry.delete(0, END)
incorrect = incorrect + 1
label.config(text = question[QuestionNo])
# answer.delete(0, END)
elif count == 3:
# entry.delete(0, END)
label.config(text = "Correct: "+str(correct) + " Incorrect: "+str(incorrect))
ans1.configure(text=str(answer1[count]))
ans2.configure(text=str(answer2[count]))
ans3.configure(text=str(answer3[count]))
ans4.configure(text=str(answer4[count]))
button = tk.Button(root,text = "Submit",command = out)
button.pack()
使用var.set(0)
重置选择。
您是否将 var 用于不同问题页面中的单选按钮?您可以对第 1 页使用 var1,对第 2 页使用 var2 以避免结转。