Einzelnen Beitrag anzeigen

papabaer

Registriert seit: 24. Okt 2006
11 Beiträge
 
#7

Re: mp3 starten, stoppen und Ende erkennen

  Alt 30. Okt 2006, 12:54
Also mit dem Abtesten von Position und Länge klappt es gut, wobei ich mir immer noch nicht erklären kann, weshalb mbStopped nicht funktioniert. Macht - aus meiner Sicht - ja das Gleiche. Also nur der Vollständigkeit halber:

Delphi-Quellcode:
procedure TMediaForm.FormCreate(Sender: TObject);
begin
  MPlayer.Notify:= True;
  MPlayer.OnNotify:= NotifyProc;
end;

procedure TMediaForm.FormShow(Sender: TObject);
begin
  MPlayer.FileName:= 'd:\applause.wav';
  MPlayer.Open;
  MPlayer.Play;
end;

procedure TMediaForm.NotifyProc(Sender: TObject);
begin
  with Sender as TMediaPlayer do
    begin
      if MPLayer.Position= MPlayer.Length then
        begin
          MediaForm.Close;
          MainForm.Enabled:= true;
        end;
      Notify:= True;
    end;
    Notify := True;
  end;
end;

procedure TMediaForm.BtnStopClick(Sender: TObject);
begin
  MPlayer.Stop;
  Close;
end;
Das MPlayer.Close musste ich zweimal entfernen, da es jeweils einen MCI-Error produziert hat. Aber so wie oben funktioniert es. Danke.
  Mit Zitat antworten Zitat