Einzelnen Beitrag anzeigen

blink182

Registriert seit: 19. Jun 2007
126 Beiträge
 
Delphi 5 Standard
 
#3

Re: über button1 eine wave Datei abspielen

  Alt 20. Aug 2008, 20:07
Delphi-Quellcode:

// aus der Delphi-Hilfe...

uses mmsystem;


begin
 {Folgende Flags können benutzt werden:
  SND_SYNC = Spielt den Sound ab, die Anwendung "steht"
  SND_ASYNC = Spielt den Sound ab, die Anwendung läuft weiter
  SND_LOOP = Spielt den Sound endlos}
 


  {Es können auch mehrere Flags kombiniert werden:} 
  flag:=SND_SYNC or SND_LOOP;


  {Abspielen kann man einen Sound dann ganz einfach so:} 
  sndPlaySound('sound.wav', Flag);


  {Um einen endlosen Sound zu stoppen, ruft die Funktion mit folgenden
  Parametern auf:}
 
  sndPlaySound(NIL,0);
end;
oder

Delphi-Quellcode:
uses mmsystem;

// kA von wem die schöne Delay-Prozedur war :) ist auf jedenfall Praktisch
procedure Delay(Milliseconds: Integer);
var
  Tick: DWord;
  Event: THandle;
begin
  Event := CreateEvent(nil, False, False, nil);
  try
    Tick := GetTickCount + DWord(Milliseconds);
    while (Milliseconds > 0) and
          (MsgWaitForMultipleObjects(1, Event, False, Milliseconds, QS_ALLINPUT) <> WAIT_TIMEOUT) do
    begin
      Application.ProcessMessages;
      if Application.Terminated then Exit;
      Milliseconds := Tick - GetTickcount;
    end;
  finally
    CloseHandle(Event);
  end;
end;


procedure TForm1.Button1Click(Sender: TObject);
var i:integer;
begin
for i:=0 to 20 do
begin
PlaySOUND(PChar('asound.wav'),hInstance,snd_ASync );
delay(3000)
end;
end;

// oder

procedure TForm1.Button1Click(Sender: TObject);
var i:integer;
const
FileName = 'asound.wav';
begin
for i:=0 to 20 do
begin
MCISendString(PChar('play ' + FileName), nil, 0, 0);
delay(3000)
end;
end;
  Mit Zitat antworten Zitat