Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторная работа №22.pdf
Скачиваний:
30
Добавлен:
16.03.2015
Размер:
1.63 Mб
Скачать

Лабораторные работы по информатике для специальности «Моделирование и исследование операций в организационно-технических системах»

//проигрываем первый трек if SndList.Count<>0 then

begin mmPlayer.FileName:=SndList.Strings[CurFile]; mmPlayer.Open;

mmPlayer.Play;

//устанавливаем заголовок формы

Caption:=SndList.Strings[CurFile]; end;{if}

end;{FormCreate}

procedure TfrmSndList.FormKeyDown(Sender: TObject;

var Key: Word; Shift: TShiftState);

begin

//если нажата клавиша "ESC", то останавливаем проигрыватель if Key=VK_ESCAPE then mmPlayer.Stop;

end;{FormKeyDown}

procedure TfrmSndList.FormDestroy(Sender: TObject); begin

//разрушаем список

SndList.Free; end;{FormDestroy} end.{UPlayer}

Прокомментируем текст программы. Список файлов для воспроизведения хранится в объекте SndList. При создании формы с помощью функций FindFirst и FindNext список заполняется mp3 файлами которые будут найдены в текущем каталоге. Затем первый файл из списка загружается и запускается на воспроизведение. Если будет нажата клавиша «ESC» (событие OnKeyDown), то воспроизведение текущего файла прекращается. При остановке проигрывателя возникает событие OnNotify компонента mmPlayer. Обработчик этого события выбирает из списка файлов следующий файл и запускает его на воспроизведение. Если список файлов исчерпан, то программа завершается.

Задания к лабораторной работе

1.Изучите работу с компонентами TTimer, TMediaPlayer по материалу лабораторной работы. Изучите работу с API-функциями MessageBeep и PlaySound,

2.Наберите и отладьте программы, приведенные в лабораторной работе.

3.Модифицируйте программу, приведенную в листинге 1: добавьте в программу еще 5 спрайтов, все спрайты должны двигаться по случайным траекториям. Для реализации двойной буферизации используйте класс TBitmap.

4.Перепишите программу созданную в п.3 с использованием компонента TImageList.

5.Ответьте на контрольные вопросы к лабораторной работе.

6.Отчитайтесь преподавателю по данной теме.

Вопросы к лабораторной работе

1.Как установить интервал срабатывания таймера?

2.Для чего нужна двойная буферизация? Как работает алгоритм двойной буферизации?

3.Для чего предназначена функция InvalidateRect?

Лабораторные работы по информатике для специальности «Моделирование и исследование операций в организационно-технических системах»

4.Объясните алгоритм рисования спрайта с использованием маски.

5.Как вывести спрайт с помощью компонента TImageList?

6.Как можно воспроизвести звуковой файл?

7.Как можно поиграть видеофайл?

8.Для чего служит функция MessageBeep?

Справочные таблицы

 

Таблица 1 – Идентификаторы для стандартных звуков..........................................................

12

Таблица 2 – Некоторые возможные значения параметра fdwSound. .....................................

13

Таблица 3

– Назначение кнопок компонента TMediaPlayer....................................................

17

Таблица 4

– Свойства компонента TMediaPlayer.....................................................................

17

Таблица 5

– Методы компонента TMediaPlayer.......................................................................

21

Таблица 6

– События компонента TMediaPlayer......................................................................

21