Анимация на языке программирования 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.2016Delphi - среда быстрой разработки, в которой в качестве языка программирования используется типизированный объектно-ориентированный язык 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