Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi Playlist mit Tmediaplayer (https://www.delphipraxis.net/151674-playlist-mit-tmediaplayer.html)

aisti5792 27. Mai 2010 17:04


Playlist mit Tmediaplayer
 
Hi

Ich bin gerade dabei das ich einen Mediaplayer mit Delphi programmiere und auch eine Playlist dazu. Bisher hat alles gut funktioniert. Ich habe eine Listbox erstellt und kann die Lieder auswählen die ich dann abspielen möchte, doch ich will auch automatisch wenn das eine Lied zu Ende ist auf das Nächste überspringen. Es geschieht leider nichts.

Hier wäre der Code:

Delphi-Quellcode:
procedure TForm1.ListBox1Click(Sender: TObject);
var i: Integer;
begin
for i:=0 to listbox1.Items.Count -1 do
   begin
   if Listbox1.Selected[i] then
   mediaplayer1.FileName:=listbox1.Items.Strings[i];
   mediaplayer1.Open;
   mediaplayer1.Play;
   ProgressBar1.Max:=Mediaplayer1.Length;
   label2.Caption:=timetostr((mediaplayer1.TrackLength[1]/(3600000*24)));
   end;

      if mediaplayer1.Position = mediaplayer1.Length then
   begin
   mediaplayer1.FileName:=listbox1.Items.Strings[i+1];
   mediaplayer1.Play;
   end;

end;
[edit=Matze][delphi]-Tags eingefügt. Zukünftig bitte selbst daran denken. MfG, Matze[/edit]

Matze 27. Mai 2010 17:13

Re: Playlist mit Tmediaplayer
 
Hallo, herzlich Willkommen!

Das Problem ist, dass du die ListBox in einer Schleife durchläufst. Der MediaPlayer pausiert die Schleife nicht, bis das Lied zu Ende ist. D.h. du öffnest sehr schnell hintereinander alle Lieder aus deiner ListBox.

Falls der TMediaPlayer kein entsprechendes Ereignis haben sollte, könntest du einen Timer bsp. im 500-Milisekunden-Takt mitlaufen lassen, der die Liedposition prüft und ggf. ein neues Lied startet.

aisti5792 27. Mai 2010 17:24

Re: Playlist mit Tmediaplayer
 
Danke für die schnelle Antwort.

Ok das Problem wär mir nicht aufgefallen. Gibts es eine andere Möglichkeit 'i' zu definieren, ohne dass ich eine Schleife verwende?

Gausi 27. Mai 2010 17:36

Re: Playlist mit Tmediaplayer
 
Da ist dann wohl der Mediaplayer for Dummies das richtige. :D

(Nicht bös gemeint, das Tutorial heißt nunmal so. ;-))

aisti5792 27. Mai 2010 17:49

Re: Playlist mit Tmediaplayer
 
Werd ich mir mal ansehen, danke :-D

aisti5792 27. Mai 2010 18:02

Re: Playlist mit Tmediaplayer
 
Nun habe ich eine weiteres Problem entdeckt. Wenn ich in meiner ListBox das Lied in der 2. Leiste zum Beispiel auswähle, erscheint ein Fehler:

Kann keinen Gerätetyp aus der angegebenen Dateinamenerweiterung ermitteln


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:47 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz