Порядок выполнения

Постановка задачи

Пояснения к работе

Компонент Animate расположен на вкладке Win32 и позволяет воспроизвести только простую, не сопровождаемую звуком анимацию, кадры которой находятся в AVI-файле. Свойства компонента приведены в таблице:

FileName Имя AVI-файла
StartFrame Номер кадра, с которого начинается отображение анимации
StopFrame Номер кадра, на котором заканчивается отображение анимации
Activate Признак активации процесса отображения
Color Цвет фона, на котором воспроизводится анимация
Transparent Режим использования «прозрачного» цвета при отображении анимации
Repetitions Количество повторов отображения

 

Разработать приложение позволяющее выбирать и воспроизводить AVI-файлы в двух режимах: непрерывном и покадровом.

 

 

1. Загрузить Delphi, сохранить проект.

2. Расположить на форме компонент Animate (Win32).

3. Для свойства FileName выбрать имя Avi-файла.

4. В процедуру TForm1.FormCreate ввести код:

animate1.Play(0,animate1.FrameCount ,1);

5. Проверить работу приложения.

6. Самостоятельно изменить программу для того, чтобы количество повторов было 3. Проверить.

7. Привести форму в соответствие с образцом, для этого добавить компоненты и изменить им свойство Caption:

· Label и Edit;

· GroupBox, RadioButton

· OpenDialogs;

· командные кнопки.

8. Объявить глобальную переменную

CFrame: integer; // номер кадра,

 

9. Создать и объявить процедуру OpenAvi

procedure TForm1.OpenAVI;

begin

Button1.Enabled := False;

Button2.Enabled := False; Button3.Enabled := False;

RadioButton1.Enabled := False; RadioButton2.Enabled := False;

try

Animate1.FileName := Edit1.Text;

except

on Exception do

begin

MessageDlg('Ошибка формата AVI файла.'+

#13+'(Анимация не должна сопровождаться звуком.)',

mtError,[mbOk],0);

exit;

end; end;

Button1.Enabled := True;

RadioButton1.Enabled := True; RadioButton2.Enabled := True;

end;

 

10. Для кнопки Выбрать (Button4) ввести код:

OpenDialog1.Title := 'Выбрать AVI файл';

OpenDialog1.InitialDir :='';

if OpenDialog1.Execute Then Begin

Edit1.Text := OpenDialog1.FileName;

OpenAVI; End;

 

11. Для кнопки Пуск ввести код:

if Animate1.Active = False // в данный момент анимация нет then begin

Animate1.StartFrame:=1; // вывод с первого кадра

Animate1.StopFrame:=Animate1.FrameCount; //по последний кадр

Animate1.Active:=True;

Button1.caption:='Стоп';

RadioButton2.Enabled:=False;

end

else // анимация отображается

begin

Animate1.Active:=False; // остановить отображение

Button1.caption:='Пуск';

RadioButton2.Enabled:=True;

end;

 

12. Для переключателя Непрерывно ввести код:

Button1.Enabled:=True; // доступна кнопка Пуск

// сделать недоступными кнопки просмотра по кадрам

Form1.Button3.Enabled:=False;

Form1.Button2.Enabled:=False;

 

13. Для переключателя По кадрам ввести код:

Button2.Enabled:=True; // кнопка Следующий кадр доступна

Button3.Enabled:=False; //кнопка Предыдущий кадр недоступна

// сделать недоступной кнопку Пуск - вывод всей анимации

Button1.Enabled:=False;

Animate1.StartFrame:=1;

Animate1.StartFrame:=1;

CFrame:=1;

 

14. Для кнопки К следующему кадру ввести код:

if CFrame < Animate1.FrameCount Then Begin

CFrame := CFrame + 1;

// вывести кадр

Animate1.StartFrame := CFrame;

Animate1.StopFrame := CFrame;

Animate1.Active := True;

if CFrame = Animate1.FrameCount // текущий кадр - последний

then Button2.Enabled:=False;

End;

if CFrame > 1 then Button3.Enabled := True;

 

15. Для кнопки К предыдущему кадру ввести код:

if CFrame > 1 then

begin

CFrame := CFrame - 1;

// вывести кадр

Animate1.StartFrame := CFrame;

Animate1.StopFrame := CFrame;

Animate1.Active := True;

if CFrame = 1 // текущий кадр - первый

then Form1.Button3.Enabled := False;

end;

if CFrame < Animate1.FrameCount then Button2.Enabled := True;

 

16. Проверить работу приложения.

17. Добавить на форму пункт меню Справка.

18. Присоединить к проекту форму для выдачи Справки, для этого:

1. выбрать в меню File / New/Other;

2. выбрать вкладку Forms, на ней выбрать About box.

19. Привести форму в соответствие с образцом:

20. Самостоятельно доработать приложение для вызова окна справки (пункт Справка) и скрытие окна (кнопка Ок)

21. Результат показать преподавателю.