Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.02 c
1-1089801256
r0bert
2004-07-14 14:34
2004.07.25
проблема с запоминанием размеров окна


1-1089705993
Jakut
2004-07-13 12:06
2004.07.25
ListView + Gauge


14-1088594973
Александр Иванов
2004-06-30 15:29
2004.07.25
У меня в субботу свадьба


1-1089147829
AndrewVolkov
2004-07-07 01:03
2004.07.25
:=nil; Free; Destroy


14-1089025534
Vlad Oshin
2004-07-05 15:05
2004.07.25
:)




   Наверх