Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.07.25;
Скачать: CL | DM;

Вниз

Проиграть звук   Найти похожие ветки 

 
ser_ega   (2004-05-09 00:20) [0]

PlaySound(FileName, 0, SND_FILENAME);
Если я использую несколько раз подряд такой код, не успевает 1-ый доиграть он прерывается и начинает играть следующий и т.д. Что делать??? Я делаю так

Begin
 PlaySound(FileName1, 0, SND_FILENAME);
 PlaySound(FileName2, 0, SND_FILENAME);
 PlaySound(FileName3, 0, SND_FILENAME);
End;


 
Mim1 ©   (2004-05-09 00:27) [1]

Как вариант.

Вызывайте эти функции в отделоном потоке, с использованием параметра SND_SYNC


unit Unit2;

interface

uses
 Classes;

type
 TSoundplayer = class(TThread)
 private
   { Private declarations }
 protected
   procedure Execute; override;
 end;

implementation

procedure TSoundplayer.Execute;
begin
PlaySound(FileName1, 0, SND_FILENAME+SND_SYNC);
PlaySound(FileName2, 0, SND_FILENAME+SND_SYNC);
PlaySound(FileName3, 0, SND_FILENAME+SND_SYNC);
end;

end.

unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls;

type
 TForm1 = class(TForm)
   Button1: TButton;
   procedure Button1Click(Sender: TObject);
 private
   { Private declarations }
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

implementation

uses Unit2;

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
 with TSoundplayer.Create(true) do
   begin
     FreeOnTerminate := true;
     Resume;
   end;
end;

end.



Страницы: 1 вся ветка

Текущий архив: 2004.07.25;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.028 c
1-1089787776
belkova
2004-07-14 10:49
2004.07.25
Размер формы


1-1089203408
dosik
2004-07-07 16:30
2004.07.25
Двумерные массивы в испекторе объектов


3-1088127214
Dim!S
2004-06-25 05:33
2004.07.25
Фильтрация связанных таблиц


3-1088175347
Alibaba
2004-06-25 18:55
2004.07.25
sp_who


1-1089764884
SPeller
2004-07-14 04:28
2004.07.25
COM-сервер на другой машине