ПРАКТИЧЕСКАЯ РАБОТА № 4

Var

x,y,h,w:integer;//координаты и размеры пули

x0,y0,h0,w0 :integer; //координаты и размеры самолета

begin

pula.Top:=pula.Top-5;

If pula.top<0 then

Begin

timer2.Interval :=0;

pula.Visible :=false;

End;

x:=pula.left; y:=pula.Top;

w:=pula.Width ; h:=pula.Height ;

x0:=samolet.Left ; y0:=samolet.Top;

w0:=samolet.Width ;h0:=samolet.Height ;

if (x+w>x0) and (x<x0+w0) and (y+h>y0) and (y<y0+h0) then

result.Caption :=inttostr(strtoInt(result.Caption)+1) ;

end;

  1. Проверить работы программы. Определить, почему баллы начисляются неверно. Внести изменения в процедуру для того, чтобы за одно попадание добавлялся один балл.
  2. Добавить на форму компонент Shape (имя Bomba, Visible False, измените размер и цвет Brush / Color ) и еще один таймер Timer3(Intarval =10).
  3. Для таймера ввести следующий код:

If Bomba.Visible =False Then

Begin

Bomba.Visible :=True;

Bomba.Left :=Samolet.Left+5 ;

Bomba.Top:=Samolet.Top+5;

End

Else

Begin

Bomba.Top:=Bomba.Top+1;

If Bomba.top>men.Top+30 Then Bomba.Visible :=False;

End ;

  1. Проверить работу программы. Самостоятельно внести изменения в процедуру для того, чтобы баллы уменьшались при попадании в «охотника».
  2. Самостоятельно добавить проверку на окончание игры.
  3. Проект сохранить. Результат показать преподавателю.

Задания для самостоятельного выполнения

Задание №1

Модифицировать разработанное приложение: добавить еще один «летательный» объект, скорость и направление движения объектов должна быть различна. Программа должна добавлять баллы при попадании в любой из объектов. Оба объекта могут сбрасывать «бомбы»

Задание №2

Разработать игру «Клавиатурный тренажер», который работает следующим образом:

· сверху вниз «падает» буква( метка с одной буквой, код буквы -случайное число от 192 до 223). Если буква «упала», то сверху начинает падать другая буква;

· игрок должен нажать соответствующую клавишу на клавиатуре;

· программа должна регистрировать количество ошибок (клавиша нажата неверно или буква «упала» и кнопка не была нажата);

· если количество ошибок превысит 10, то игрок проиграл.

 

Задание №3

Расположить на форме таймер, фигуру «круг» и фигуру «прямоугольник». Разработать приложение, которое работает следующим образом:

· прямоугольник выполняет роль лапты, он перемещается влево и вправо при нажатии клавиш. ®

· круг - это мячик, который постоянно прямолинейно двигается, при столкновении с границами формы или лаптой меняет свое направление на противоположное.

Задание №4

Разработать приложение «Колобок», которое должно работать следующим образом:

· «колобок» постоянно жует (открывает /закрывает рот) и прямолинейно движется;

· при нажатии клавиш ® ↓ ↑ «колобок» меняет направление движения и «смотрит» туда, куда движется.

Контрольные вопросы

1. В каких случаях используется таймер? Что определяет свойство Interval?

2. Как остановить работу таймера?

3. Как определить код нажатой клавиши?

4. На какие события реагирует компонент Shape?


 

Тема:Элементы пользовательского интерфейса.

Цель работы:Получить навыки создания меню, панели инструментов и настройки формы.