Анимация на языке программирования Delphi 7

Освоение языка программирования Delphi. Построение блок-схемы запуска главного таймера и основная логика программы. Использованные свойства и события Form, MediaPlayer, Timer, MainMenu. Запуск, пауза и остановка анимациии. Создание листинга программы.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 22.06.2014
Размер файла 771,9 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru/

Введениe

Появление Delphi тесно связанно с возникновением языка программирования Pascal. Который был разработан в 60-х годах прошлого века профессором Цюрихского университета Николосом Виртом, как учебный язык для студентов. Позднее, в 1983 году, один из учеников Вирта создал компанию Borland, и под его руководством Pascal превратился в мощное средство разработки программ.

Данная программа написана в среде Delphi. Среда программирования Delphi в настоящее время является одной из самых развитых систем визуального объектно-ориентированного программирования. Её возможности отвечают высоким требованиям и подходят для создания приложений любой сложности. Структурированность и простота Delphi делает его одним из совершенных языков программирования. На нем можно создать все, что делают на С++ избежав всех имеющихся в нем трудностей. Он позволяет с наименьшими усилиями создавать от простых приложений работающих на одном компьютере до корпоративных приложений, использующие серверные базы данных, расположенные на разных платформах. На Delphi возможно создать интернет приложения, коммерческие игры, утилиты и много других видов программ.

1. Блок-схема алгоритма работы программы

Блок-схема запуска главного таймера (рисунок 1).

Рисунок 1-Запуск анимации.

Основная логика программы ( рисунок 2).

Рисунок 2-Логика программы.

Рисунок 2-Логика программы (продолжение).

2. Компоненты программы

Запускаем программу. Видим форму, на которой расположены компоненты. Image1(1), image2(2), timer(3), mainmenu1(4), mediaplayer1(5).

Рисунок 3- Рабочая область.

Использованные свойства и события:

Form1 (главная форма программы, на ней расположены все компоненты):

- Свойство DefaultMonitor - dmDesktop( расширение монитора);

- Свойство Menu - MainMenu1(присваивание компонентов);

- Событие OnCreate (отвечает за порядок событий);

4. MainMenu1 (панель, на которой расположены кнопки управления):

- Свойство Items (определяет элементы подменю);

1. Image1 (фон):

- Свойство Align - alClient (растягивает на всю длину);

- Свойство Picture (указывает на хранящийся файл) ;

- Свойство Stretch (определяет размеры файла);

2.Image2 (колобок):

- Свойство Left (сдвигает левый край элемента);

- Свойство Picture (указывает на хранящийся файл);

- Свойство Stretch (определяет, изменяет ли размеры файл);

- Свойство Top (определяет смещение по вертикали);

- Свойство Transparent (определяет прозрачность элемента);

5.MediaPlayer1 (универсальный проигрыватель аудио- и видео-информации):

- Свойство EnabledButton (указывает выбранную кнопку);

- Свойство FileName (хранит объект воспроизведения в файле);

- Свойство Visible (видимость);

3.Timer (не визуальный компонент, который может размещаться в любом месте формы. Позволяет задавать интервалы времени):

- Свойство Interval (интервал времени в миллисекундах);

- Свойство Enabled (доступность);

- Событие OnTimer (отключает таймеры);

При запуске программы появляется рабочая область.

Чтобы запустить анимацию необходимо нажать "Запуск".

Для паузы и остановки соответственно "Пауза" и "Стоп" (рисунок 4).

программирование delphi анимация таймер

Рисунок 4 - Кнопки управления.

Запуск программы (рисунок 5).

Рисунок 5-Запуск.

При запуске анимации объект начинает движение (рисунок 6).

Рисунок 6- Анимация.

В конечном итоге объект падает в яму и исчезает (рисунок 7).

Рисунок 7 - Окончание действия.

Для того, чтобы вернуть объект в исходное положение необходимо нажать "Стоп".

3. Листинг программы

unit Unit1;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, ExtCtrls, Menus, jpeg, MPlayer;

type

TForm1 = class(TForm)

Image1: TImage;

Image2: TImage;

MainMenu1: TMainMenu;

N1: TMenuItem;

N2: TMenuItem;

N3: TMenuItem;

Timer1: TTimer;

MediaPlayer1: TMediaPlayer;

Timer2: TTimer;

Timer3: TTimer;

Timer4: TTimer;

procedure Timer1Timer(Sender: TObject);

procedure N1Click(Sender: TObject);

procedure N2Click(Sender: TObject);

procedure Timer2Timer(Sender: TObject);

procedure Timer3Timer(Sender: TObject);

procedure N3Click(Sender: TObject);

procedure FormCreate(Sender: TObject);

procedure Image2DblClick(Sender: TObject);

procedure Timer4Timer(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

rot:array[1..100] of string;

i:integer;

implementation

{$R *.dfm}

procedure TForm1.Timer1Timer(Sender: TObject);

begin // часть кода, которая отвечает за звуки

if image2.top=256 then begin

mediaplayer1.FileName:='oi2.wav';

mediaplayer1.Open;

mediaplayer1.Play;

end

else

if image2.Left=78 then begin

mediaplayer1.FileName:='smeh2.wav';

mediaplayer1.Open;

mediaplayer1.Play;

end;

// конец кода звуков

{

// это с прыжком, убираются фигурные скобки здесь и перед комментарием конца прыжка

image2.Left:=image2.Left-1;

if image2.Left=424 then

timer2.Enabled:=true

else begin

if image2.Top=168 then

timer3.Enabled:=true;

end;

}

// конец кода прыжка

// начало кода падения

if image2.Left=368 then begin // если колобок добрался до ямы, то он падает

image2.Top:=image2.Top+3;

if image2.Top=256 then // если колобок упал в яму, то он исчезает

image2.Visible:=false;

end

else // иначе продолжает катиться

image2.Left:=image2.Left-1;

// конец падения

// эта строка отвечает за исчезновение колобка, когда он добирается до двери

if image2.Left=78 then image2.Visible:=false;

end;

procedure TForm1.N1Click(Sender: TObject);

begin

timer1.Enabled:=true; // эта строка отвечает за всю анимацию

timer4.Enabled:=true;

end;

procedure TForm1.N2Click(Sender: TObject); // эта процедура нужна для "паузы"

begin // ниже включаем все таймеры

timer1.Enabled:=false;

timer2.Enabled:=false;

timer3.Enabled:=false;

timer4.Enabled:=false;

end;

procedure TForm1.Timer2Timer(Sender: TObject); //эта процедура включает второй таймер, который отвечает за движение вверх во время прыжка

begin

if image2.top=168 then //если колобок допрыгнул достаточно высоко, то выключаем таймер

timer2.Enabled:=false

else begin // иначе прыгаем выше

image2.Top:=image2.Top-2;

image2.Left:=image2.Left-2; // увеличивает в два раза координату оси Ох

if image2.top=168 then // дублирование первого условия для того, чтобы остановить таймер на высшей точке прыжка

timer2.Enabled:=false;

end;

end;

procedure TForm1.Timer3Timer(Sender: TObject); // процедура таймера , в котором прописано опускание колобка на землю после прыжка

begin

if image2.Top=208 then

timer3.Enabled:=false

else begin

image2.Top:=image2.Top+2;

image2.Left:=image2.Left-2;

end;

end;

procedure TForm1.N3Click(Sender: TObject); // процедура возвращения колобка в исходное положение и отключение таймеров

begin

image2.Top:=208;

image2.Left:=600;

timer1.Enabled:=false;

timer2.Enabled:=false;

timer3.Enabled:=false;

timer4.Enabled:=false;

image2.Visible:=true; // колобок становится виден

image2.Picture.LoadFromFile('kolob.bmp');

end;

procedure TForm1.FormCreate(Sender: TObject);

begin

doublebuffered:=true; // включает двойную буфферизацию для удаления эффекта мерцания

i:=1;

rot[1]:='kolob.bmp';

rot[2]:='kolob2.bmp';

rot[3]:='kolob3.bmp';

rot[4]:='kolob4.bmp';

rot[5]:='kolob5.bmp';

rot[6]:='kolob6.bmp';

rot[7]:='kolob7.bmp';

rot[8]:='kolob8.bmp';

end;

procedure TForm1.Image2DblClick(Sender: TObject);

begin

image2.Hint:=inttostr(image2.left);

end;

procedure TForm1.Timer4Timer(Sender: TObject); // отвечает за вращение колобка

begin

image2.Picture.LoadFromFile(rot[i]);

i:=i+1;

if i=8 then i:=1;

end;

end.

4. Используемые файлы

Project2.exe - выполняемый файл

Project2.dpr - файл проекта

Project2.cfg - файл конфигурации

Project2.dof - файл опций проекта

Project2.res - файл ресурсов

Unit1.dfm - файл формы 1

Unit1.pas - файл отдельного модуля (Unit 1)

Unit1.dcu - результат компиляции pas(Unit1)

Заключение

В данной работе я показала анимацию. Она состояла в том, чтобы объект (колобок), не доходя до домика, упал.

Благодаря этой работе, я научилась работать с графикой. А также освоила язык программирования Delphi.

Список литературы

1. "Программирование в Delphi 7", Архангельский А. Я., "Бином-Пресс", 2003 г.

2. "Технологии Delphi", Бобровский С., "Аст-Пресс", г. Москва, 2007г.

3. http://www.rsdn.ru/article/Delphi/Delphi_7_02.xml

Размещено на Allbest.ru


Подобные документы

  • Теоретические основы объектно-ориентированного языка программирования Delphi, изучение среды визуального проектирования приложений. Определение 40-го числа Фибоначчи, составление листинга и блок-схемы программы, тестирование ее на работоспособность.

    курсовая работа [261,1 K], добавлен 25.03.2015

  • Особенности создания программы "Файловый менеджер" в среде объектно-ориентированного программирования Delphi. Назначение и основные функции программы, формулировка задачи. Описание программы, использованные компоненты, интерфейс и порядок применения.

    контрольная работа [1,3 M], добавлен 19.06.2012

  • Особенности разработки приложений для операционной системы с помощью императивного, структурированного, объектно-ориентированного языка программирования Delphi. Формальное начало программы. Выделение конца программного блока. Листинг и описание программы.

    курсовая работа [1,2 M], добавлен 04.08.2014

  • Разработка программы автоматизации процесса проверки знаний учащихся. Использование языка программирования Borland Delphi 7.0, его свойства, компоненты для работы со строками. Создание обучающих тестов на знание лексики и грамматики английского языка.

    курсовая работа [521,0 K], добавлен 06.03.2016

  • Delphi - среда быстрой разработки, в которой в качестве языка программирования используется типизированный объектно-ориентированный язык Delphi. Варианты программного пакета. Особенности работы, вид экрана после запуска. Описание структуры программы.

    курсовая работа [1,3 M], добавлен 25.11.2014

  • Разработка программы обработки типизированных файлов с кодом на языке Object Pascal, с использованием компонентов Delphi для ввода и вывода данных. Разработка экранных форм и алгоритма программы. Описание программных модулей и инструкция оператору.

    курсовая работа [1,5 M], добавлен 08.02.2011

  • Понятие материального и идеального моделирования. Разработка модели экономического предприятия компьютерного клуба "GaMeR" для подсчета рентабельности. Выбор языка программирования Delphi, его преимущества и особенности. Описание листинга программы.

    курсовая работа [166,7 K], добавлен 11.03.2014

  • Изучение общей структуры языка программирования Delphi: главные и дополнительные составные части среды программирования. Синтаксис и семантика языка программирования Delphi: алфавит языка, элементарные конструкции, переменные, константы и операторы.

    курсовая работа [738,1 K], добавлен 17.05.2010

  • Разработка программы проверки знаний для тестирования студентов по программированию с кодом на языке Delphi. Проектирование визуального интерфейса и словесный алгоритм работы программы. Алгоритмы разработанных процедур и функций, инструкция пользователя.

    курсовая работа [506,5 K], добавлен 21.02.2011

  • Изучение основ программирования и создание полноценного приложения в среде программирования Delphi. Разработка эскизного и технического проектов программы. Внедрение выполнения программы. Разработка рабочего проекта, спецификация и текст программы.

    курсовая работа [560,1 K], добавлен 18.07.2012

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.