Проєкт "Тестування". Етап 3. Програма для вчителя
На третьому етапі роботи над проектом розробимо форму створення запитань для вчителя. Потрібно передбачити текстові рядки введення питання та 5 варіантів відповідей, позначення правильних та збереження цієї інформації у файл.
Підготовка інтерфейсу
Перше текстове поле - текст питання, повинно міститись у першому рядку та займати 2 стовпці:
pytannya = Entry (root, width=50)
pytannya.grid(row=0,column=0,columnspan=2)
Наступні 5 рядків містять елементи типу прапорець та текстове поле.
r = 1
for ans in range(5):
text=Entry(root, width=35)
text.grid(row=r,column=1)
CheckVar = IntVar()
praporets = Checkbutton (root, text = "" , variable = CheckVar, onvalue = 1, offvalue = 0)
praporets.grid(row=r,column=0)
r = r + 1
Кнопка розміщується в останньому рядку форми та містить посилання на функцію додавання питання:
knopka=Button(root, text="Додати питання", command=add)
knopka.grid(row=8,column=0,columnspan=2)
Додавання питання у файл
Доцільно створити файл, у який буде відбуватись запис питань тесту на початку роботи програми, після створення основного вікна програми. При кожному клацанні кнопки Додати питання до цього файлу потрібно додавати інформацію: питання, 5 варіантів відповідей, номери правильних відповідей.
Для обробки текстів варіантів відповідей та прапорців доцільно заносити їх у списки при створенні елементів Entry та Checkbutton:
answers=[None]*5
correct=[None]*5
....
answers[ans]=Entry(root, width=35)
answers[ans].grid(row=r,column=1)
correct[ans]=CheckVar
У результаті буде сформовано 2 списки по 5 елементів, до яких можна отримувати доступ із функції Додати питання.
Додавши тексти питання та відповідей у файл доцільно очистити текстові поля:
pytannya.delete(0, 'end')
Завдання
Передбачити збереження файлу з питаннями тесту під довільною назвою.