|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Практика №3. Разработка проекта Тест по Delphi. Постановка задачи. План разработки программы. Рисунок 25.3Практика №3 Разработка проекта Тест по Delphi 1. Постановка задачи Создать программу, с помощью которой можно выполнить: После запуска программы появляется изображение аналогичное рисунку 25.2. Пользователь по своему усмотрению выбирает один из переключателей в группе. В зависимости от правильности ответов появляется одно из сообщений «Плохо!», «Удовлетворительно!», «Хорошо!», «Отлично!».
Рисунок 25.2 Пояснения: новыми в этой программе являются группа переключателей RadioGroup, компонент CheckBox и компонент Panel на странице палитры компонентов Стандартные (Standard). 2. План разработки программы 1. Открыть новый проект. Дать имя форме Тест по Delphi. 2. Сохранить проект в отдельной папке под именем Pr6.pas и Project6.dpr 3. Разместить в форме компоненты в соответствии с рисунком 25.3. Рисунок 25.3
4. Выполнить следующие действия:
5. Для суммирования набираемых пользователем баллов выполните следующие действия:
Переменную Sum необходимо объявить в разделе Var перед разделом implementation.
6. Вставьте в обработчик событий RadioGroup2Click, RadioGroup3Click, RadioGroup4Click, RadioGroup5Click аналогичные коды, с учетом правильных ответов, но без обнуления переменной Sum, так как оно необходимо лишь один раз перед началом суммирования.
7. Выведем на контрольную панель итоговое сообщение в зависимости от набранной суммы баллов.
8. Вывести сообщение об окончании тестирования, добавив в обработчик событий RadioGroup5Click код: ShowMessage (‘Конец теста!’);
9. Сохранить проект окончательно, запустить и протестировать его. 3. Дополнительное задание 1. Для контроля правильности работы программы вывести на панель (Panel2) набранную пользователем сумму баллов. Подсказка.В форме разместить компоненты Label6 и Panel2.
Заголовку соответствующей панели присвоить значение IntToStr (sum).
2. Запустите программу и убедитесь, что верная сумма баллов получается лишь при последовательном выборе переключателей сначала из RadioGroup1, затем RadioGroup2 и т.д. Если порядок нарушен, то результат может быть неверным. Чтобы этого не случилось, вставьте дополнительную кнопку и сделайте подсчёт баллов только после её нажатия (кнопка Проверить (bkAll)). 3. Сделайте повторный запуск программы (сброс значений). Для этого в форме расположите дополнительную кнопку Повторить (bkRetry). 4. Для наглядности вывести результат разным цветом. Подсказка. В оператор Case при выборе результата задать свойству font.Color выбранный цвет. Например: Panel1.Font.Color:=clRed; 5.Сделать доступным группы переключателей RadioGroup1 и т.д. только при включенном CheckBox1. Для этого свойству Enabled компонентов RadioGroup1, RadioGroup2 и т.д. задать значение false.
А в обработчик событий CheckBox1. Click вставить код: If CheckBox1.Checked=false then RadioGroup1.Enabled:=false else RadioGroup1.Enabled:=true;
В этой же процедуре вставить аналогичные коды для RadioGroup2, RadioGroup3, RadioGroup4, RadioGroup5, а также для кнопок Проверить и Повторить. Примерный вид готового приложения:
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|