∆6
Модуль SoundsМодуль Sounds содержит процедуры и функции для работы со звуком:
n:=LoadSound(fname) - загружает звук из файла с именем fname в оперативную память и возвращает описатель звука в целую переменную n (звуковой файл должен иметь формат .wav);
PlaySound(n) - начинает проигрывание звука с описателем n;
StopSound(n) - останавливает проигрывание звука с описателем n;
RewindSound(n) - "перематывает" звук с описателем n на начало;
DestroySound(n) - удаляет звук с описателем n из оперативной памяти, описатель звука при этом становится недействительным;
SoundIsPlaying(n) - возвращает True если звук с описателем n проигрывается и False в противном случае;
SoundLength(n) - возвращает длительность звука с описателем n в миллисекундах.Модуль Sounds содержит также класс Sound, имеющий следующий интефейс:
type
Sound=class
public
constructor Create(fname: string);
destructor Destroy;
procedure Load(fname: string);
procedure Play;
procedure Stop;
procedure Rewind;
property IsPlaying: boolean;
function Length: integer;
end;
Конструкторы и деструкторы
constructor Create(fname: string);
Создает объект класса Sound и загружает в него звук из файла fname (звуковой файл должен иметь формат .wav). Звук с именем fname ищется вначале в текущем каталоге, а затем в подкаталоге Media\Sounds\ каталога программы PascalABC.exe.
destructor Destroy;
Разрушает объект и содержащийся в нем звук.Свойства
property IsPlaying: boolean;
Проигрывается ли звук. Присваивание IsPlaying=False эквивалентно вызову Stop, а присваивание IsPlaying=True - вызову Play.
Методы
procedure Load(fname: string);
Загружает звук из файла с именем fname. Звук с именем fname ищется вначале в текущем каталоге, а затем в подкаталоге Media\Sounds\ каталога программы PascalABC.exe. Звук, до этого содержащийся в объекте, разрушается.
procedure Play;
Начинает проигрывание звука.
procedure Stop;
Останавливаетает проигрывание звука.
procedure Rewind;
"Перематывает" звук на начало.
function Length: integer;
Возвращает длительность звука в миллисекундах.Звуки удобнее рассматривать как объекты класса Sound, в котором собраны все основные действия со звуками. Такой подход является более удобным и современным, чем подход с описателями звуков. Единственный его недостаток - необходимость вводить основные понятия, связанные с классами. Подход с описателями позволяет работать со звуками сразу после рассмотрения темы "Процедуры и функции" или даже раньше, если подпрограммы рассматривать просто как команды.
Пример работы со звуком с использованием описателей
uses Sounds;
var n: integer;
begin
n:=LoadSound('b.wav');
PlaySound(n);
Sleep(SoundTime(n));
DestroySound(n);
end.
Пример работы со звуком с использованием класса Sound
uses Sounds;
var s: Sound;
begin
s:=Sound.Create('b.wav');
s.Play;
Sleep(s.Length);
s.Destroy;
end.
∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆
7.
Модуль Containers
ВЫ ЧИТАЕТЕ
Программисты
AcakЭта книга предназначена для обучения людей программированию на языке Паскаль и ориентирована на школьников и студентов младших курсов. После прочтения данной книги вы с легкостью напишите множество программ которые могут помочь вам и окружающим вас...