![]() |
Re: Hohe "Ladezeit" bei vielen MP3 Dateien (FindAl
Beispiele habe ich nicht, aber so schwer ist es nicht. :???: Du benötigst wie ich schon erwähnt habe eine TList. In dieser Liste speicherst du mit Hilfe von Strukturen/Klassen/Records deine Infos (Eine Liste mit Pointern). Die Listview dient ausschließlich zum Darstellen der Infos. Da das Suchen der Dateien recht flott ist, legst du auch genauso viele Einträge wie die Anzahl gefundener Dateien an, das gilt für die Listview, als auch für die TList. Mit einem zusätzlichen Thread könnte man dann die TList auf Nachfrage füllen. Ist ein gültiger Eintrag vorhanden, so wird er auch gleich gezeichnet.
Um das Zeichnen müssest du dich dann selbst kümmern. Wie man das macht, findest du ebenfalls hier im Forum. |
Re: Hohe "Ladezeit" bei vielen MP3 Dateien (FindAl
Zitat:
Zitat:
|
Re: Hohe "Ladezeit" bei vielen MP3 Dateien (FindAl
ohje, das ist mir doch irgendwie zu hoch :(
werd mich mal bissl damit beschäftigen aber falls jemand lust hat n kleines beispiel dazu zu machen, is das natürlich viel besser. dann könnte ich anhand des codes etc. auch richtig sehen wie was funzt etc. naja, mal abwarten und tee trinken bzw. rumprobieren :zwinker: @ghostwalker: die sammlung hat bestimmt auch mal über 10.000 dateien jenachdem wer die jukebox dann benutzt :zwinker: ist die methode von bigg dann nicht zu empfehlen oder wie soll ich das verstehen? :gruebel: |
Re: Hohe "Ladezeit" bei vielen MP3 Dateien (FindAl
10.000 sind ja nicht grade sehr viel. In einer Excel-Tabelle nimmt das ja nicht mal 1/6 des verfügbaren Platzes ein. Ein Kumpel verwaltet so zum Beispiel seine Video-Sammlung. Ziemlich abenteuerlich, aber es funktioniert. :)
Ich schätze, wenn ich mal irgendwann ein Musikportal entwickeln sollte, wo man mehrere Millionen Titel katalogisieren müsste, würde ich auch zu einer DB greifen, aber so. Sind ja nur eine handvoll Songs. :cheers: |
Re: Hohe "Ladezeit" bei vielen MP3 Dateien (FindAl
so, bin auch grad drann an nem musik-katalogisierungsprogramm zu schreiben xD
dabei benutze ich meine eigene "datenbank" einfach nen record definieren:
Delphi-Quellcode:
dann noch ne variable
TTabelle = Record
Interpret, Album, Titel, Pfad: String[255]; // und was du hier halt noch speichern willst end;
Delphi-Quellcode:
zum laden und speichern einfach
Tabelle = Array of TTabelle;
Delphi-Quellcode:
bei ca 18.500 musikfiles brauch das laden und speichern ca 1 sekunde, und das suchen und anzeigen in meiner "datenbank" ne halbe sekunde^^
function TDatenbank.SaveToFile(Dest: string): Boolean;
var f: file of TTabelle; I: Cardinal; begin result := true; if high(tabelle) > 1 then try assignFile(f, Dest); reWrite(f); for I := 1 to high(Tabelle) do write(f, Tabelle[i]); closeFile(f); except result := false; end; // try end; function TDatenbank.LoadFromFile(Source: string): Boolean; var f: file of TTabelle; begin result := True; try try assignFile(f, Source); reset(f); SetLength(Tabelle, 0); SetLength(Tabelle, FileSize(f)+1); C := 0; while not eof(f) do begin Inc(C); read(f, Tabelle[C]); end; finally closeFile(f); end; except result := false; end; // try end; end; eine ListView würde ich nicht zum anzeigen empfehlen, eher ein VirtualTreeView |
Re: Hohe "Ladezeit" bei vielen MP3 Dateien (FindAl
danke dominik, werde das bei gelegenheit mal ausprobieren.
is im moment aus zeitgründen eher schlecht. ;( gruß torsten |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:20 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 by Thomas Breitkreuz