Я провожу эксперимент, в котором я представляю стимулы участникам и задаю им вопросы после каждого стимула.У меня четыре вопроса, каждый в отдельной рамке.Ответом на каждый вопрос является выбор одной из семи радиокнопок.У меня также есть кнопка в отдельном кадре для сохранения значений выборов и представления следующего стимула.Проблема здесь в том, что если участник забыл выбрать одну из радиокнопок, значение этой кнопки будет сохранено как 0, и я хочу избежать этого.Я попытался создать условие, чтобы включить следующую кнопку стимула, только если были выбраны все радиокнопки, и у меня не получилось.Есть ли способ для этого?
import Tkinter as tk
import PIL.Image
import PIL.ImageTk
import tkMessageBox
from Tkinter import *
def present(tacton):
qual_frame = tk.LabelFrame(group, padx=30, pady=30)
qual_frame.grid(row=0, column=1)
urgency_frame = tk.LabelFrame(qual_frame, text="How Urgent was the
stimulus?", padx=15, pady=30, font = "Verdana 14")
urgency_frame.grid(row=1, column=0)
urgency = tk.IntVar()
Radiobutton(master=urgency_frame, text="1 (Not at all) ",
variable=urgency , value=1, font = "Verdana 12").grid(row=0, column=0)
Radiobutton(master=urgency_frame, text="2 ",
variable=urgency , value=2, font = "Verdana 12").grid(row=0, column=1)
Radiobutton(master=urgency_frame, text="3 ",
variable=urgency , value=3, font = "Verdana 12").grid(row=0, column=2)
Radiobutton(master=urgency_frame, text="4 (Neutral) ",
variable=urgency , value=4, font = "Verdana 12").grid(row=0, column=3)
Radiobutton(master=urgency_frame, text="5 ",
variable=urgency , value=5, font = "Verdana 12").grid(row=0, column=4)
Radiobutton(master=urgency_frame, text="6 ",
variable=urgency , value=6, font = "Verdana 12").grid(row=0, column=5)
Radiobutton(master=urgency_frame, text="7 (Very much)", variable=urgency ,
value=7, font = "Verdana 12").grid(row=0, column=6)
annoyance_frame = tk.LabelFrame(qual_frame, text="How Annoying was the
stimulus?", padx=15, pady=30, font = "Verdana 14")
annoyance_frame.grid(row=5, column=0, sticky="nsew")
annoyance = tk.IntVar()
Radiobutton(master=annoyance_frame, text="1 (Not at all) ",
variable=annoyance, value=1, font = "Verdana 12").grid(row=0, column=0)
Radiobutton(master=annoyance_frame, text="2 ",
variable=annoyance, value=2, font = "Verdana 12").grid(row=0, column=1)
Radiobutton(master=annoyance_frame, text="3 ",
variable=annoyance, value=3, font = "Verdana 12").grid(row=0, column=2)
Radiobutton(master=annoyance_frame, text="4 (Neutral) ",
variable=annoyance, value=4, font = "Verdana 12").grid(row=0, column=3)
Radiobutton(master=annoyance_frame, text="5 ",
variable=annoyance, value=5, font = "Verdana 12").grid(row=0, column=4)
Radiobutton(master=annoyance_frame, text="6 ",
variable=annoyance, value=6, font = "Verdana 12").grid(row=0, column=5)
Radiobutton(master=annoyance_frame, text="7 (Very much)",
variable=annoyance, value=7, font = "Verdana 12").grid(row=0, column=6)
valence_frame = tk.LabelFrame(qual_frame, text = 'How Pleasant was the
stimulus?', padx = 15, pady = 30, font = "Verdana 14")
valence_frame.grid(row=10, column=0, sticky="nsew")
valence = tk.IntVar()
Radiobutton(master=valence_frame, text="1 (Not at all) ",
variable=valence, value=1, font = "Verdana 12").grid(row=0, column=0)
Radiobutton(master=valence_frame, text="2 ",
variable=valence, value=2, font = "Verdana 12").grid(row=0, column=1)
Radiobutton(master=valence_frame, text="3 ",
variable=valence, value=3, font = "Verdana 12").grid(row=0, column=2)
Radiobutton(master=valence_frame, text="4 (Neutral) ",
variable=valence, value=4, font = "Verdana 12").grid(row=0, column=3)
Radiobutton(master=valence_frame, text="5 ",
variable=valence, value=5, font = "Verdana 12").grid(row=0, column=4)
Radiobutton(master=valence_frame, text="6 ",
variable=valence, value=6, font = "Verdana 12").grid(row=0, column=5)
Radiobutton(master=valence_frame, text="7 (Very much)", variable=valence,
value=7, font = "Verdana 12").grid(row=0, column=6)
arousal_frame = tk.LabelFrame(qual_frame, text = 'How Exciting was the
stimulus?', padx = 15, pady = 30, font = "Verdana 14")
arousal_frame.grid(row=15, column=0, sticky="nsew")
arousal = tk.IntVar()
Radiobutton(master=arousal_frame, text="1 (Not at all) ",
variable=arousal, value=1, font = "Verdana 12").grid(row=0, column=0)
Radiobutton(master=arousal_frame, text="2 ",
variable=arousal, value=2, font = "Verdana 12").grid(row=0, column=1)
Radiobutton(master=arousal_frame, text="3 ",
variable=arousal, value=3, font = "Verdana 12").grid(row=0, column=2)
Radiobutton(master=arousal_frame, text="4 (Neutral) ",
variable=arousal, value=4, font = "Verdana 12").grid(row=0, column=3)
Radiobutton(master=arousal_frame, text="5 ",
variable=arousal, value=5, font = "Verdana 12").grid(row=0, column=4)
Radiobutton(master=arousal_frame, text="6 ",
variable=arousal, value=6, font = "Verdana 12").grid(row=0, column=5)
Radiobutton(master=arousal_frame, text="7 (Very much)", variable=arousal,
value=7, font = "Verdana 12").grid(row=0, column=6)
next_frame = tk.LabelFrame(group, padx=20, pady=20)
next_frame.grid(row=6, column=1)
Next_Stimulus = tk.Button(master=next_frame, text="Next Stimulus",
bg="green", padx=20, pady=20, width=20, font = "Verdana 12")
Next_Stimulus.pack()
root.mainloop()