Einzelnen Beitrag anzeigen

Benutzerbild von Hador
Hador

Registriert seit: 11. Dez 2004
Ort: Recke
682 Beiträge
 
Turbo Delphi für Win32
 
#8

Re: mp3 starten, stoppen und Ende erkennen

  Alt 30. Okt 2006, 15:32
Zitat von papabaer:
Delphi-Quellcode:
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;
Wiso schreibst du eigentlich with Sender as TMediaPlayer do... wenn du letztlich doch per MPlayer... auf deine Instanz vom Mediaplayer zugreifst?
Auserdem setzt du jedesmal zweimal Notify auf True, was völlig unnötig ist, da du es nur einmal nach dem erschaffen des Players machen musst.

Also:
Delphi-Quellcode:
procedure TMediaForm.NotifyProc(Sender: TObject);
begin
  if MPLayer.Position= MPlayer.Length then
  begin
    MediaForm.Close;
    MainForm.Enabled := True;
  end;
end;
Wegen MainForm.Enabled := True; :
Ich denke du deaktivierst dein Hauptformular, wenn du das mit dem Player aufrufst.
Ruf das Formular doch einfach modal auf (MediaForm.ShowModal. Dann ist dein Hauptformular ohnehin solange deaktiviert wie das Playerformular geöffnet ist und du ersparst dir das manuelle deaktivieren.

Gruß Lars
Lars Kiesow
http://www.larskiesow.de

Computer gehorchen deinen Befehlen, nicht deinen Absichten.
  Mit Zitat antworten Zitat