![]() |
Listbox mit Lieder füllen funktioniert nicht
Hallo, ich bin gerade dabei einen MP3 Player zu programmieren.
Ich wähle in einem BrowseDialog einen Musikordner aus:
Delphi-Quellcode:
zum Schluss wird die function MP3ListeFuellen aufgerufen...
procedure TForm1.btnOpenFolderClick(Sender: TObject);
var mp3Folder : string; begin mp3Folder := BrowseDialog('Wähle einen Ordner mit Liedern aus:', BIF_RETURNONLYFSDIRS); if mp3Folder = '' then Exit; txtFolder.Caption := mp3Folder; MP3ListeFuellen(mp3Folder, mp3List.Items); end;
Delphi-Quellcode:
er durchläuft die Schleife, füllt mir aber nicht die ListBox ..
procedure MP3ListeFuellen(Folder: string; sl: TStrings);
var Rec : TSearchRec; mp3List: TListBox; begin sl.Clear; if SysUtils.FindFirst(Folder + '*.mp3', faAnyFile, Rec) = 0 then try repeat sl.Add(Rec.Name); until SysUtils.FindNext(Rec) <> 0; finally SysUtils.FindClose(Rec); end; end; Kann mir bitte jemand helfen? |
AW: Listbox mit Lieder füllen funktioniert nicht
Findet er denn Dateien?
|
AW: Listbox mit Lieder füllen funktioniert nicht
Hi Luckie,
ja im "Rec.Name" wird der Mp3 Name gespeichert .... und geht alle Mp3 durch, die in dem Ordner sind. bin schon eine ganze Weile dabei, eine Lösung zu finden .... |
AW: Listbox mit Lieder füllen funktioniert nicht
Zitat:
Dann solltest du mal schauen, ob in deiner Ordner-Variablen der Pfad mit abschließendem '\' steht. Und in deinem Code fehlt noch ein FindClose. Bernhard PS: Das
Delphi-Quellcode:
brauchst du eigentlich gar nicht, da ja Windows meist die erste Uses ist und SysUtils danach eingebunden wird und somit die Aufrufe aus der Windows-Unit überschreibt.
SysUtils.
|
AW: Listbox mit Lieder füllen funktioniert nicht
Hallo,
dein Übergabeparameter sl ist nur "oneway" und liefert nicht zurück. Mach einmal ein var davor, dann sollte es klappen (var sl : TStrings) Ciao Frank |
AW: Listbox mit Lieder füllen funktioniert nicht
Nein, var ist nicht nötig, da es sich bei Objektinstanzen um Pointer handelt.
|
AW: Listbox mit Lieder füllen funktioniert nicht
Hallo Detlef,
mmmh, procedure MP3ListeFuellen ist für mich erst einmal nur eine Prozedur. Ciao Frank |
AW: Listbox mit Lieder füllen funktioniert nicht
Das hat aber nichts damit zu tun, dass Objektinstanzen als Argumente automatisch by Reference übergeben werden.
|
AW: Listbox mit Lieder füllen funktioniert nicht
Zitat:
Wenn in den TStrings was drin steht, dann ausserhalb der Prozedur einer BESTEHENDEN TListBox zuweisen mit ListBox.Items.Assign(); |
AW: Listbox mit Lieder füllen funktioniert nicht
Die Variable ist lediglich überflüssig, zugegriffen wird ja auf den Parameter.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:28 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