Практическая работа "Светофор" 6 класс

ПРАКТИЧЕСКАЯ РАБОТА № 2
СВЕТОФОР
Цель работы: познакомиться со свойствами компонентов, приобрести навыки
написания приложений с обработкой событий указателя мыши.
Задание к работе:
Создать программу, выполняющую следующие действия:
1. После запуска программы в окне изображается светофор с тремя лампочками,
способными реагировать на наведение указателя мыши.
2. Когда указатель мыши наведен на лампочку, она меняет свой цвет.
3. При наведении указателя на зеленый сигнал светофора, должна начать движение
машинка. После того как машинка «доедет» до границы формы, она изменяет
направление движения на противоположное (т.е. она не должна «уезжать» за границы
формы).
4. Если зеленый сигнал светофора тухнет, машинка останавливается.
5. Для выхода из программы необходимо щелкнуть мышью на закрывающей кнопке
в строке заголовка.
Выполнение работы
1. Создать новый проект.
2. Разместить на форме экземпляры компонентов: фигура Shape.
3. Выполнить следующие действия:
Выделенный
объект
Вкладка
окна Object
Inspector
Имя свойства/
имя события
Действие
Form1
Properties
Caption
Установка имени формы
"Светофор"
Height
Присвоить значение 700
Width
Присвоить значение 400
Borderlcons
(Служебные
кнопки)
Выбрать для подсвойства
biMinimize (Сворачивание)
и biMaximize
(Разворачивание) значение
False
Color
Задать серый цвет
BorderStyle (Стиль
рамки)
Выбрать значение bsSingle
(запрет изменения
размеров)
Events
OnCreate
Установить значение
глобальной переменной i:= -
1, что означает изменение
координаты X в сторону
уменьшения. Присвоить
глобальной переменной
Start начальное значение
координаты X объекта
Shape4 (кузов машинки):
Start := Shape4.Left;
Shape1 (Вкладка
Additional)
Properties
Height
Присвоить значение 61
Width
Присвоить значение 61
Shape
Выбрать значение stCircle
(Круг)
(Форма)
Pen (Контур)
Выбрать для подсвойства
Color (Цвет) значение clRed
(красный цвет)
Выбрать для подствойства
Width (толщина
линии)значение 3
Brush (Кисть)
Выбрать для подсвойства
Style (стиль) значение
bsClear (прозрачный)
Events
onMouseMove
Установить красный цвет
круга Shape 1. Brush.
Color:=clRed;
Выключить таймер (для
остановки машинки)
Timerl.Enabled:= False;
Shape2 (Вкладка
Additional)
Properties
Height
Присвоить значение 61
Width
Присвоить значение 61
Shape
Выбрать значение stCircle
(Круг)
(Форма)
Pen (Контур)
Выбрать для подсвойства
Color (Цвет) значение
clYellow (желтый цвет)
Выбрать для подствойства
Width (толщина
линии)значение 3
Brush (Кисть)
Выбрать для подсвойства
Style (стиль) значение
bsClear (прозрачный)
Events
onMouseMove
Установить желтый цвет
круга Shape2.Brush.Color:=cl
Yellow; Выключить таймер
(для остановки машинки)
Timerl.Enabled:= False;
Shape3 (Вкладка
Additional)
Properties
Height
Присвоить значение 61
Width
Присвоить значение 61
Shape
Выбрать значение stCircle
(Круг)
(Форма)
Pen (Контур)
Выбрать для подсвойства
Color (Цвет) значение
clLime (ярко зеленый цвет)
Выбрать для подствойства
Width (толщина
линии)значение 3
Brush (Кисть)
Выбрать для подсвойства
Style (стиль) значение
bsClear (прозрачный)
Events
onMouseMove
Установить ярко зеленый
цвет круга Shape3
.Brush.Color:=cl Lime;
Включить таймер (для
запуска машинки)
Timerl.Enabled:= True;
Timer1
Properties
Enabled
False - неактивен
Interval
5 - интервал срабатывания
таймера (чем меньше
интервал, тем быстрее будет
двигаться машинка по
экрану)
Events
onTimer
Передвигаем машинку по
экрану (прямоугольник
Shape4 - кузов; круги
Shape5 и Shape6 - колеса)
Shape4.Left := Shape4.Left +
i;
Shape5.Left := Shape5.Left+
i;
Shape6.Left := Shape6.Left +
i;
Если машинка доехала до
левой границы
экрана, то координату X в
дальнейшем будем
увеличивать (машинка
движется вправо)
if Shape4.Left=10 then i:=l;
Если машинка доехала до
правой границы экрана, то
координату X в дальнейшем
будем уменьшать (машинка
движется влево) if
Shape4.Left= Start then i:=-l;
Shape7 (Вкладка
Additional) - корпус
светофора
Properties
Height
Подобрать требуемый
размер
Width
Подобрать требуемый
размер
Shape (Форма)
Выбрать значение
stRoundRect
(прямоугольник со
скругленными углами)
Pen (Контур)
Выбрать для подсвойства
Color (Цвет) значение
clBlack (черный цвет)
Выбрать для подствойства
Width (толщина
линии)значение 3
Brush (Кисть)
Выбрать для подсвойства
Color (цвет) значение
clBlack (черный цвет)
Events
onMouseMove
«Погасить» красный и
желтый свет (задать
прозрачный цвет):
Shape 1. Brush.
Style:=bsClear;
Shape2.Brush.Style:=bsClear;
Shape3.Brush.Style:=bsClear;
Выключить таймер (для
остановки машинки)
Timer 1.Enabled” False;
Примечание: для перемещения Shape7 на задний план, из контекстного меню выбрать
Control - Send То Back.
6. Выравнивание элементов:
1. Выделить все три фигуры.
2. Выбрать команду Edit Align (Правка — Выровнить).
3. Откроется диалоговое окно Alignment (Выравнивание).
4. Установить слева переключатель Center in Window (Центрировать в окне).
5. Установить справа переключатель Space Equally (С равными промежутками).
6. Щелкнуть на кнопке ОК.
7. Сохраните проект, запустите и протестируйте его.