Entwickler-Ecke

Grafische Benutzeroberflächen (VCL & FireMonkey) - Mehrere Verzeichnisse in einer FileListBox anzeigen?


wurstuk - Mi 13.04.11 14:55
Titel: Mehrere Verzeichnisse in einer FileListBox anzeigen?
Hi ich möchte ein Verwaltungstool für Guitar Pro Dateien. Viele Sachen funktionieren auch schon ziemlich gut. Das ganze sieht so aus das aus einem bestimmten Ordner alle Guitar Pro Dateien ausgelesen werden und in einer FileListBox angezeigt werden. Ich möchte nun aber gerne noch hinzufügen das der User Einzelne Ordner oder Dateien hinzufügen kann, ähnlich wie bei Itunes.

Geht das denn überhaupt, oder ist das mit ein bisschen mehr Aufwand verbunden?^^


trm - Mi 13.04.11 15:03

Hallo,

Luckie hatte mal eine Komponente erstellt, die sich FolderBrowser nennt. Damit kann man sehr gut Ordner auswählen und das Ergebnis als String weiterverwenden.
Für einzelne/mehrere Dateien kannst Du den OpenDialog nutzen :)

Wenn Du mehrere Verzeichnisse verwalten willst, bietet sich eine normale Listbox oder auch ein Memo an.
Durch die Zeilenweise Zuordnung kannst Du dann schnell den String ermitteln und mittels DirectoryExists() prüfen, ob das Verzeichnis noch verfübar ist.
Dann kannst Du dieses Verzeichnis zum Einlesen von Dateien in der FileListBox benutzen :)

Viele Grüße


wurstuk - Mi 13.04.11 19:24

ok danke schonmal! :)

Aber so ganz versteh ich das noch nicht ich glaube ich hab mich falsch ausgedrückt^^ Ich bräuchte eigentlich nur einen Weg um in einer FileListBox Dateien aus mehreren Verzeichnissen anzeigen zu lassen.

Kannst du deinen weg vielleicht nochmal erklären?


trm - Mi 13.04.11 20:14

Im Anhang findest Du ein kleines Beispiel, was Dir vielleicht auf den Weg helfen könnte.

Links im Beispiel ist Dein Aufbau (schaätze ich mal).
Rechts ist mein Aufbau.
Wenn Du im rechten Feld nun die Sachen erweiterst und eine zusätzliche Listbox oder Memo einfügst, in welchem die Pfade eingetragen werden können, kannst Du diese Pfade Zeilenweise einlesen und in ListBox2 die Dateien aus den Pfaden eintragen.

Ich glaube, direkt in einer FileListBox ist dies nicht möglich. Außerdem ist das noch ein Überbleibsel aus Zeiten vor Windows95.