2. Разработка экранных форм и алгоритма программы

В предыдущем разделе было сказано, что процесс решения поставленной задачи разбивается на 3 этапа, первый из которых заключается в построении интерфейса с пользователем на основе экранных форм и визуальных объектов проектирования.

По сформулированной в предыдущем задании постановке должна иметься возможность авторизации тестируемого учащегося – ввода его фамилии и группы. Для этого предусмотрим отдельную форму авторизации FormAvto. Для возможности ввода данных об учащемся поместим на форме поля ввода типа TEdit и соответствующие метки описания к ним. Список объектов экранной формы приведен в таблице 2.1

Таблица 2.1 – Объекты экранной формы FormAvto

Имя Тип Назначение
Label1 TLabel надпись «Задайте фамилию, инициалы и группу учащегося»
Label2 TLabel надпись «Фамилия»
Label3 TLabel надпись «Имя»
Efam TEdit поле для вода фамилии учащегося
EGroup TEdit поле для ввода группы учащегося
BitBtnStart TBitBtn кнопка для начала теста с надписью «НАЧАТЬ»

Для начала теста предусмотрена кнопка типа TBitBtn, который в отличие от обычных кнопок типа TButton позволяет задавать не только текст, но и изображение. В обработчике нажатия на эту кнопку должна выводиться форма с вопросами. Внешний вид спроектированной формы приведен на рисунке 2.1


Рисунок 2.1 – Внешний вид формы FormAvto

Для вывода вопросов, ввода ответов пользователя предусмотрим отдельную форму FormTest. Список объектов, используемых в форме приведен в таблице 2.2, а внешний вид приведен на рисунке 2.2.

Таблица 2.2 – Объекты экранной формы FormTest

Имя Тип Назначение
Label1 TLabel надпись «Текущий вопрос»
LbNom TLabel надпись, в которой будет выводиться номер текущего вопроса
StaticText1 TStaticText поле, в котором будет выводиться очередной вопрос
RGroup1 TRadioGroup поля для вывода вариантов ответов и их указания студентом
BitBtn1 TBitBtn кнопка «Принять ответ» для анализа ответа и перехода к следующему вопросу
BNewTest TButton кнопка для закрытия формы тестов и перехода на форму авторизации (для новой попытки тестирования)

При построении формы предполагалось, что база вопросов будет построєна таким образом, чтобы ответ предполагал выбор только одного из перечисленных четырех вариантов ответов. То есть, база не должна содержать вопросов с множественным выбором, либо вариантов без правильного ответа. Также не должно быть вопросов, требующих ввода ответа в текстовом виде (например, ответ вычисленной формулы или правильное написание ключевого слова).


Рисунок 2.2 – Внешний вид формы FormTest

Во избежание кратковременного завершения теста скроем системное меню окна, установив параметр формы FormTest. BorderIcons biSystemMenu равным false. Также в алгоритме следует предусмотреть, что в начале тестирования кнопка с надписью «Начать заново» должна быть невидимой, и должна появляться только после ответа на все вопросы и вывода итоговой оценки.

Анализируя все вышеизложенные предположения и разработанные формы, можем составить словесные алгоритмы приложения.

1.  Запустить экранную форму авторизации FormAvto

2.  При нажатии на кнопку «Начать» следует выполнить действия:

2.1  Сгенерировать базу вопросов, и перемешать их случайным образом;

2.2  Сформировать имя файла из имени студента и его группы и открыть файл для записи;

2.3  Обнулить количество правильных ответов;

2.4  Установить номер текущего вопроса на первый вопрос;

2.5  Скрыть форму FormAvto и показать форму с тестами FormTest;

2.6  Показать первый вопрос и варианты его ответов на форме FormTest;

2.7  Ожидать нажатия на кнопку «Принять ответ».

3.  При нажатии на кнопку «Принять ответ» следует выполнить действия:

3.1  Проанализировать выбранный вариант ответа и сравнить его с правильным, и если ответ правильный, то нарастить количество правильных ответов на 1;

3.2  Записать в файл протокола текущий вопрос и вариант, который выбрал пользователь в качестве ответа;

3.3  Если номер текущего вопроса меньше общего количества вопросов в базе, то нарастить номер на 1, вывести очередной вопрос на форму и перейти к началу пункта 3.

3.4  Если номер текущего вопроса равен количеству вопросов в базе, то:

3.4.1. подсчитать оценку пропорционально количеству правильных ответов;

3.4.2. показать сообщение с оценкой;

3.4.3. сделать кнопку «Начать заново» видимой

4.  При нажатии кнопки «Начать заново» закрыть форму с тестами FormTest и показать форму авторизации FormAvto.

Анализируя требования к функциям разрабатываемого приложения под разработанные экранные формы и словесный алгоритм, можно выделить следующие программные модули:

1)  Генерация базы вопросов;

2)  Перемешивание базы вопросов случайным образом;

3)  Анализ текущего ответа и переход на следующий вопрос, если вопрос не последний либо вывод результатов тестирования при достижении последнего вопроса;

4)  Модули перехода между экранными формами авторизации и тестирования.

Каждый из вышеприведенных модулей реализуем при помощи процедуры. Модуль 1 целесообразно запускать один раз при создании формы с тестами. Модуль 2 следует запускать каждый раз при начале нового теста, то есть при активизации формы с тестами. Модель 3 должен запускаться каждый раз при нажатии на кнопку «Принять ответ». Модули 4 должны быть обработчиками нажатий на кнопку «Начать» экранной формы авторизации и кнопку «Начать заново» экранной формы тестирования.

Составим алгоритм приложения, который представлен в приложении на рисунке A.1. На алгоритме приведены основные события экранных форм. В этом алгоритме:

Блок №4 реализован процедурой FormAvto, BitBtnStartClick,

блок №5 – процедурой FormTest. FormCreate,

блок №6 – процедурой FormTest. FormActivate,

блок №7 – процедурой FormTest BNewTestClick,

блок №8 реализован процедурой FormTest. BitBtn1Click.

Детальное описание разработанной программы, алгоритмов и их программной реализации приведено в последующих разделах.



Информация о работе «Разработка программы с помощью языка программирования Delphi»
Раздел: Информатика, программирование
Количество знаков с пробелами: 30480
Количество таблиц: 4
Количество изображений: 10

Похожие работы

Скачать
36935
4
14

... курс. - М.: Нолидж, 2000. 4.  Фаронов В.В. «DELPHI. Программирование на языке высокого уровня». – Питер, 2005. 5.  Дятченко Д.А. Методические указания к выполнению курсовой работы по дисциплине «Программирование и алгоритмические языки»– Северодонецк, 2005.   ПРИЛОЖЕНИЕ А Алгоритм программы Рисунок А.1 – Обработка событий главной формы программы Рисунок А.2 – ...

Скачать
14945
0
7

... к сожалению, обратное утверждение не верно. C++ Builder содержит инструменты, которые при помощи drag-and-drop действительно делают разработку визуальной, упрощает программирование благодаря встроенному WYSIWYG - редактору интерфейса и пр. Delphi — язык программирования, который используется в одноимённой среде разработки. Сначала язык назывался Object Pascal. Начиная со среды разработки Delphi ...

Скачать
44688
14
5

... . И хотя, используя недокументированные возможности и определённые ухищрения, всё это можно реализовать и на VB; пользоваться этими трюками гораздо сложнее, чем, например, на Delphi. 4. ПРАКТИЧЕСКАЯ РЕАЛИЗАЦИЯ ЗАДАЧ С ИСПОЛЬЗОВАНИЕМ ЯЗЫКА ПРОГРАММИРОВАНИЯ DELPHI   4.1 Задача 1. Примитивный калькулятор   1. Войдите в среду Delphi, дважды щелкнув мышью на пиктограмму Delphi или через меню “ ...

Скачать
20594
4
8

... из 1 откомпилированного exe файла – Метод Симпсона.exe и rar-архива содержащего все компоненты программы написанных на языке программирования – Delphi 7.0. 1.         Запуск программы осуществляется путем открытия файла Метод Симпсона .exe. Рис 1.   2.         Ввод значений производится следующим образом: Рис 2.   Ввод функции f(x) – в данное ...

0 комментариев


Наверх