АкушерствоАнатомияАнестезиологияВакцинопрофилактикаВалеологияВетеринарияГигиенаЗаболеванияИммунологияКардиологияНеврологияНефрологияОнкологияОториноларингологияОфтальмологияПаразитологияПедиатрияПервая помощьПсихиатрияПульмонологияРеанимацияРевматологияСтоматологияТерапияТоксикологияТравматологияУрологияФармакологияФармацевтикаФизиотерапияФтизиатрияХирургияЭндокринологияЭпидемиология

Листинг 11.2. Программа Звуки Microsoft Windows

Прочитайте:
  1. Microsoft Access
  2. Анализ отклонений Microsoft Project
  3. Бронхолегочная дисплазия у детей (научно-практическая программа, 2012 год)
  4. Бронхолегочная дисплазия у детей (научно-практическая программа, 2012 год)
  5. Диагностическая программа
  6. Диагностическая программа
  7. Диагностическая программа в поликлинике онкодиспансера.
  8. Диагностическая программа.
  9. Диагностическая программа.
  10. Диагностическая программа.

unit WinSound_; interface

Uses

Windows, Messages, SysUtils,

Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, MPlayer;

Type

TForm1 = class (TForm)

MediaPlayerl: TMediaPlayer; // медиаплеер

Label1: TLabel; // информационное сообщение

ListBox1: TListBox; // список WAV-файлов

Label2: TLabel; // выбранный из списка файл

procedure FormActivate(Sender: TObject);

procedure ListBoxlClick(Sender: TObject);

procedure MediaPlayerlClick(Sender: TObject; Button: TMPBtnType;

var DoDefault: Boolean); private

{ Private declarations } public

{ Public declarations } end;

const

SOUNDPATCH='с:\winnt\media\'; // положение звуковых файлов

Var

Form1: TForm1;

Implementation

{$R *.DFM}

procedure TForm1.FormActivate(Sender: TObject);

Var

SearchRec: TSearchRec; // структура, содержащая информацию о файле,

// удовлетворяющем условию поиска

Begin

Form1.MediaPlayer1.Play;

// сформируем список WAV-файлов, находящихся

// в каталоге c:\winnt\media

if FindFirst(SOUNDPATCH+'*.wav', faAnyFile, SearchRec) =0 then

Begin

// в каталоге есть файл с расширением WAV

// добавим имя этого файла в список

Form1.ListBox1.Items.Add(SearchRec.Name);

// пока в каталоге есть другие файлы с расширением WAV

while (FindNext(SearchRec) = 0) do

Form1.ListBox1.Items.Add(SearchRec.Name);

end;

end;

// щелчок на элементе списка

procedure TForm1.ListBoxlClick(Sender: TObject);

Begin

// вывести в поле метки Label2 имя выбранного файла

Label2.Caption:=ListBox1.Items[ListBox1.itemlndex];

end;

// щелчок на кнопке компонента Media Player

procedure TForm1.MediaPlayerlClick(Sender: TObject; Button: TMPBtnType;

var DoDefault: Boolean); begin

if (Button = btPlay) and (Label2.Caption <> '') then

Begin

// нажата кнопка Play

with MediaPlayerl do begin

FileName:=SOUNDPATCH+Label2.Caption; // имя выбранного файла

Open; // открыть и проиграть звуковой файл

end;

end;

end;

End.

Воспроизведение звука сразу после запуска программы активизирует процедура обработки события onFormActivate путем применением метода Play к компоненту MediaPlayerl (действие этого метода аналогично щелчку на кнопке Воспроизведение). Эта же процедура формирует список WAV-файлов, находящихся в каталоге C:\Winnt\Media. Для формирования списка используются функции FindFirst и FindNext, которые, соответственно, выполняют поиск первого и следующего (по отношению к последнему, найденному функцией FindFirst или FindNext) файла, удовлетворяющего указанному при вызове функций критерию. Обеим функциям в качестве параметров передаются маска WAV-файла (критерий поиска) и переменная -структура searchRec, поле Name которой в случае успешного поиска будет содержать имя файла, удовлетворяющего критерию поиска.

Щелчок на элементе списка обрабатывается процедурой TForm1.ListBox1Click, которая выводит в поле метки Label2 имя файла, выбранного пользователем (во время работы программы свойство ItemIndex содержит номер элемента списка на котором выполнен щелчок).

В результате щелчка на одной из кнопок компонента MediaPiayeri активизируется процедура TForm1.MediaPiayer1Сlick, которая проверяет, какая из кнопок компонента была нажата. Если нажата кнопка Воспроизведение (btPlay), то в свойствоFileName компонента MediaPiayeri записывается имя выбранного пользователем файла, затем метод open загружает этот файл и активизирует процесс его воспроизведения.

Наличие у компонента MediaPiayer свойства visible позволяет скрыть компонент от пользователя и при этом применять его для воспроизведения звука без участия пользователя. Например, следующая программа пересчитывает вес из фунтов в килограммы и сопровождает выдачу результата звуковым сигналом. В случае, если пользователь забудет ввести исходные данные или введет их неверно, программа выведет сообщение об ошибке, также сопровождаемое звуковым сигналом. Вид диалогового окна программы во время ее разработки приведен на рис. 11.7, значения свойств компонента MediaPlaer в табл. 11.7. Текст модуля программы приведен в листинге 11.3.

Рис. 11.7. Диалоговое окно программы Фунты-килограммы

Таблица 11.7. Значения свойств компонента MediaPiayer1

       
  Свойство Значение  
  Name DeviceType FileName MediaPiayer1 dtAutoSelect с: \winnt\media\ding. wav  
       

 

       
  Свойство Значение  
  AutoOpen Visible True False  
       

 


Дата добавления: 2015-09-18 | Просмотры: 481 | Нарушение авторских прав



1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 |



При использовании материала ссылка на сайт medlec.org обязательна! (0.004 сек.)