Я создал викторину с использованием tkinter и ive, столкнувшись с небольшой проблемой. Выбрав ответ для первого вопроса и нажав кнопку «Отправить», тот же самый радиобудильник уже выбран из предыдущего вопроса для следующего вопроса. Есть ли вообще возможно обновление страницы, чтобы не было ответа на следующий вопрос?Освежающий выбор Radiobutton
На изображении показан ответ, выбранный для первого вопроса.
после нажатия представить, тот же выбор радио-кнопка выбрана.
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)'. Кстати: вам скорее нужно answer = var.get() '. Если 'answer1 [count]' является текстом, тогда вам не нужно использовать 'str()' – furas
BTW: чтобы сделать код более читаемым, поместите все ваши функции перед 'root = Tk()' – furas
Спасибо, что исправил его @ furas –