Примечайте
Лабораторная работа №5.
Мультимедиа-возможности Delphi
Большинство современных программ, работающих в среде Windows, являются мультимедийными. Такие программы обеспечивают просмотр видеороликов и мультипликации, воспроизведение музыки, речи, звуковых эффектов. Типичными примерами мультимедийных программ являются игры и обучающие программы.
Delphi предоставляет в распоряжение программиста два компонента, которые позволяют разрабатывать мультимедийные программы:
- Animate — обеспечивает вывод простой анимации (подобной той, которую видит пользователь во время копирования файлов);
- MediaPlayer — позволяет решать более сложные задачи, например, воспроизводить видеоролики, звук, сопровождаемую звуком анимацию.
Компонент Animate
Компонент Animate, значок которого находится на вкладке Win32(рис. 11.1), позволяет воспроизводить простую анимацию, кадры которой находятся в AVI-файле.
Рис. 11.1.Значок компонента Animate
Примечайте
Хотя анимация, находящаяся в AVI-файле может сопровождаться звуковыми эффектами (так ли это — можно проверить, например, при помощи стандартной программы Проигрыватель Windows Media), компонент Animate обеспечивает воспроизведение только изображения. Для полноценного воспроизведения сопровождаемой звуком анимации следует использовать компонент меdiaPlayer.
Компонент Animate добавляется к форме обычным образом. После добавления компонента к форме следует установить значения его свойств. Свойства компонента Animate перечислены в табл. 11.1.
Таблица 11.1.Свойства компонента Animate
Свойство | Определяет | ||
Name | Имя компонента. Используется для доступа к свойствам компонента и управлением его поведением | ||
FileName | Имя AVI-файла в котором находится анимация, отображаемая при помощи компонента | ||
StartFrame | Номер кадра, с которого начинается отображение анимации | ||
stopFrame | Номер кадра, на котором заканчивается отображение анимации | ||
Activate | Признак активизации процесса отображения кадров анимации | ||
Color | Цвет фона компонента (цвет "экрана"), на котором воспроизводится анимация | ||
Transparent | Режим использования "прозрачного" цвета при отображении анимации | ||
Repetitions | Количество повторов отображения анимации | ||
Следует еще раз обратить внимание, что компонент Animate предназначен для воспроизведения AVI-файлов, которые содержат только анимацию. При попытке присвоить записать в свойство FileName имя файла, который содержит звук, Delphi выводит сообщение о невозможности открытия указанного файла (Cannot openAVI). Чтобы увидеть, что находиться в AVI-файле: анимация и звук или только анимация, нужно из Windows раскрыть нужную папку, выделить AVI-файл и из контекстного меню выбрать команду Свойства.В результате этого откроется окно Свойства,на вкладке Сводка(рис. 11.2) которого будет выведена подробная информация о содержимом выбранного файла.
Следующая программа, текст которой приведен в листинге 11.1, демонстрирует использование компонента Animate для отображения в диалоговом окне программы анимации. Вид формы программы приведен на рис. 11.3, а значения свойств компонента Animatel — в таблице 11.2.
Рис. 11.2. На вкладке Сводкаотражается информация об AVI-файле
Рис. 11.3.Форма программы Просмотр анимации
Таблица 11.2.Значения свойств компонента Animate1
Свойство | Значение | ||
FileName | bart.avi | ||
Active | False | ||
Transparent | True | ||
После запуска программы в форме выводится первый кадр анимации. Программа обеспечивает два режима просмотра анимации: непрерывный и покадровый.
Кнопка Button1 используется как для инициализации процесса воспроизведения анимации, так и для его приостановки. Процесс непрерывного воспроизведения анимации инициирует процедура обработки события Onclick на кнопке Пуск, которая присваивает значение True свойству Active. Эта же процедура заменяет текст на кнопке Button1 с Пуск на Стоп. Режим воспроизведения анимации выбирается при помощи переключателей Ra-dioButton1 и RadioButton2. Процедуры обработки события Onclick на этих переключателях изменением значения свойства Enabled блокируют или, наоборот, делают доступными кнопки управления: активизации воспроизведения анимации (Buttoni), перехода к следующему (Button2) и предыдущему (Buttons) кадру. Во время непрерывного воспроизведения анимации процедура обработки события OnCkick на кнопке Стоп (Buttoni) присваивает значение False свойству Active и тем самым останавливает процесс воспроизведения анимации.