Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi Playlist --> nicht Pfad, sondern Name anzeigen (https://www.delphipraxis.net/102219-playlist-nicht-pfad-sondern-name-anzeigen.html)

Aurelius 25. Okt 2007 07:15


Playlist --> nicht Pfad, sondern Name anzeigen
 
Hallo DP'ler :hi:

In einem Mediplayer möchte ich eine Playlist einbauen. Das Eintragen in eine Listbox etc. klappt super, auch die Wiedergabe funktioniert. Nur hab ich es bis jetzt so gelöst, dass ich dort den kompletten Pfad zur Datei drin stehen hab, und das sieht doch etwas unschön aus.

Habt ihr da eine Idee wie ich das besser machen kann, also z.B. nur den Dateinamen an sich oder den ID3-Tag? wenn ich das mache muss der Pfad ja irgendwo gespeichert werden, und genau das macht mir Kopfzerbrechen :D

Tormentor32 25. Okt 2007 07:28

Re: Playlist --> nicht Pfad, sondern Name anzeigen
 
Lege die kompletten Pfade in einer TStringlist ab, extrahiere dann aus dieser Stringlist die Dateinamen und schreibe diese in die Listbox.

Gausi 25. Okt 2007 08:21

Re: Playlist --> nicht Pfad, sondern Name anzeigen
 
Oder noch besser: Erstelle dir eine eigene Klasse mit Properties wie Pfad, Dateiname, Titel Interpret, Dauer, etc., füge eine Methode GetDataFromFilename hinzu und zeige in der View die gewünschten Dinge an.

Aurelius 25. Okt 2007 09:18

Re: Playlist --> nicht Pfad, sondern Name anzeigen
 
@ Tormentor: Gute Idee, die Funktion dazu war ExtractFileName(), oder?

@ Gausi: Das hört sich sehr gut an, aber wie mach ich das denn? Hab noch nie was mit Klassen zu tun gehabt :D

Kannst du mir dazu ein Beispiel geben oder ein verständliches Tutorial?

//Edit: Hab grad das Tut von Luckie gefunden und schau es mir mal an. Gegen ein weiteres Beispiel hab ich aber nichts einzuwenden :D

Gausi 25. Okt 2007 09:45

Re: Playlist --> nicht Pfad, sondern Name anzeigen
 
Ein Beispiel, wie so eine AudioFile-Klasse aussehen könnte, habe ich mal in der Entwickler-Ecke gepostet. Da geht es allerdings hauptsächlich darum, wie man die Information aus der Datei rauskriegt. Die Playlist wäre dann im wesentlichen eine TObjectlist, die mehrere solcher AudioFile-Objekte enthält.

mimi 26. Okt 2007 13:50

Re: Playlist --> nicht Pfad, sondern Name anzeigen
 
Es geht noch viel Einfacher, z.b.:
Delphi-Quellcode:
procedure addPlaylisteItem(const aFileName:String);
begin
  Listbox1.Items.addObject(extractFileName(aFileName),TObject(aFileName);
end;

function GetPlayListenItem(const aItemIndex:Integer):String;
begin
  result:=String(Listbox1.items.object[aItemIndex]);
end;
Wenn es nur um einen Dateinamen geht, wenn du noch mehr Infos speichern möchtes zu einem Eintrag würde ich einfach eine eigene Klasse erzeugen und die dann in die TSTringList einfügen und fertig.

der Vorteil du hast nur noch eine Liste und nicht zwei.

mein Beispiel von Oben kann sehr leicht angepasst werden dafür....


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

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