Хелпикс

Главная

Контакты

Случайная статья





Практика №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. Выполнить следующие действия:

Выделенная компонента Окно инспектора объектов Имя свойства, события Действие

Label1

Параметры (Properties)

Caption С помощью какой клавиши запускают программу?
Autosize False
WordWrap True
Height
Width
Left

Label2

Параметры (Properties)

Caption Какое свойство определяет вид компонента BitBtn?
Autosize False
WordWrap True
Height
Width
Left

Label3

Параметры (Properties)

Caption Сколько окон можно увидеть после загрузки интерфейса Delphi?
Autosize False
WordWrap True
Height
Width
Left

Label4

Параметры (Properties)

Caption Главный модуль представляет собой файл с расширением:
Autosize False
WordWrap True
Height
Width
Left

Label5

Параметры (Properties)

Caption С какого слова начинается главный модуль?
Autosize False
WordWrap True
Height
Width
Left

BitBtn1

Параметры (Properties)

Kind bkClose
Caption Выход
События (Events) OnClick Close;
CheckBox1 Параметры (Properties) Caption Начало работы
Panel1 Параметры (Properties) Caption Удалить название

RadioGroup1

Параметры (Properties)

Caption Удалить название
Columns (количество отображаемых колонок)
Items Вызвать StringListEditor, дважды щелкнув мышкой рядом со свойством Items. Ввести 5 строк: F2 F5 F7 F9 F12 Введенный текст сохранить в файле test1.txt

RadioGroup2

Параметры (Properties)

Caption Удалить название
Columns
Items Ввести 5 строк: Caption Color Kind Enabled Name Введенный текст сохранить в файле test2.txt

RadioGroup3

Параметры (Properties)

Caption Удалить название
Columns
Items Ввести 5 строк: Введенный текст сохранить в файле test3.txt

RadioGroup4

Параметры (Properties)

Caption Удалить название
Columns
Items Ввести 5 строк: .res .exe .dpr .cfg .pas Введенный текст сохранить в файле test4.txt

RadioGroup5

Параметры (Properties)

Caption Удалить название
Columns
Items Ввести 5 строк: Unit Program Begin Var Function Введенный текст сохранить в файле test5.txt

 

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

Выделенная компонента Окно инспектора объектов Имя свойства, события Действие
RadioGroup1 События (Events) OnClick Sum:=0; If RadioGroup1.ItemIndex=3 Then Sum:=Sum+1; Пояснение: Индекс первого переключателя равен 0. Правильный ответ содержит переключатель с меткой F9, имеющий индекс 3.

 

Переменную Sum необходимо объявить в разделе Var перед разделом implementation.

 

6. Вставьте в обработчик событий RadioGroup2Click, RadioGroup3Click, RadioGroup4Click, RadioGroup5Click аналогичные коды, с учетом правильных ответов, но без обнуления переменной Sum, так как оно необходимо лишь один раз перед началом суммирования.

 

7. Выведем на контрольную панель итоговое сообщение в зависимости от набранной суммы баллов.

Выделенная компонента Окно инспектора объектов Имя свойства, события Действие
RadioGroup5 События (Events) OnClick Case Sum of 0..2:Panel1.Caption:=’Плохо!’; 3:Panel1.Caption:=’Удовлетворительно!’; 4:Panel1.Caption:=’Хорошо!’; 5:Panel1.Caption:=’Отлично!’; End;

 

8. Вывести сообщение об окончании тестирования, добавив в обработчик событий RadioGroup5Click код:

       ShowMessage (‘Конец теста!’);

 

9. Сохранить проект окончательно, запустить и протестировать его.

3. Дополнительное задание

1. Для контроля правильности работы программы вывести на панель (Panel2) набранную пользователем сумму баллов.

Подсказка.В форме разместить компоненты Label6 и Panel2.

Выделенная компонента Окно инспектора объектов Имя свойства Действие

Label6

Параметры (Properties)

Caption Количество правильных ответов
Height
Width

Panel2

Параметры (Properties)

Caption Удалить название
Height
Width

 

Заголовку соответствующей панели присвоить значение 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, а также для кнопок Проверить и Повторить.

Примерный вид готового приложения:

 



  

© helpiks.su При использовании или копировании материалов прямая ссылка на сайт обязательна.