Einzelnen Beitrag anzeigen

Benutzerbild von F.W.
F.W.

Registriert seit: 28. Jul 2003
Ort: Zittau
636 Beiträge
 

ListView Komponente mit Shellicons (Virtual ListView)

  Alt 5. Mai 2005, 17:35
Da ist sie nun also! Mein ListView mit ShellIcons.

Die Benutzung sieht folgendermaßen aus:
Die Items sind selbst zu erstellen bzw. zu entfernen ect. Das hat den Vorteil, dass die Kompo sehr variabel einsetzbar ist. Beispiele für Anwendungsgebiete sind FTP-Verzeichnisse auflisten, lokal Verzeichnisse auflisten oder wie bei mir, wenn Dateien mit verschiedenen Dateitypen in einer Datei gespeichert sind und dieser Inhalt aufgelistet werden soll...

Wie die Icons zugewiesen werden:
Je nachdem in welchem Index nach einem Dateinamen gesucht werden soll, wird dann die evtl. vorhandene Endung benutzt um das Dateisymbol und den Dateityp herauszubekommen, wenn keine Dateierweiterung gefunden wird, wird die "Datei" als Dateiodner oder unbekannte Datei eingestuft (bekommt das dementsprechende Icon)

Wichtige Eigenschaften sind folgende:
  • SmallShellIconsLoaded: Boolean - gibt an, ob die ShellIcons schon geladen wurden (wird durch Aufruf von LoadShellIcons True)
  • BigShellIconsLoaded: Boolean - gibt an, ob die ShellIcons schon geladen wurden (wird durch Aufruf von LoadShellIcons True)
  • SmallShellImages: TImageList - dort werden die kleinen ShellIcons geladen (von Windows) diese Liste sllte nicht greigegeben werden (.Free)!
  • BigImages: TImageList - dort werden die großen ShellIcons geladen (von Windows) diese Liste sllte nicht greigegeben werden (.Free)!
  • UseBigImages: Boolean - ob große Icons angezeigt werden sollen (nur im ViewStyle vsIcon)
  • UseSmallImages: Boolean - ob kleine Icons angezeigt werden sollen (in den drei anderen ViewStyles)
  • IndexFileExtension: Integer - gibt an, wo der Dateiname für das Symbol ist (-2 = nirgends | -1 = Caption | 0..? SubItems)
  • IndexTypeAusgabe: Integer - gibt an, in welchem SubItem/Caption der Name des Dateityps ausgegeben werden soll (-2 = nirgends | -1 = Caption | 0.. SubItems)
  • IndexFileOrOrdner: Integer - es gibt Dateien ohne Endung, die würden als Ordner erkannt werden, wenn man soein Item einfügt kann man ihm dennoch ein Dateisymbol (das Standart UNBEKANNTE DATEI Symbol geben) -1 wenn nicht benutzt; 0..? im jeweiligen SubItem muss etwas stehen damit das Dateisymbol angezeigt wird

Prozeduren/Funktionen:
  • LoadShellIcons - wird hauptsächlich intern genutzt (zum Laden der ShellIcons von Windows)
  • UpdateIcons - alle Items werden mit dem entsprechenden Icon versehen
  • UpdateIcon(const Index: Integer) - zum Aktualisieren des Symbols eines einzigen Items

Zu Fehlern kann bei den Eigenschaften Use...Images kommen, nachdem auf False setzen und dann wieder auf True setzen, werden unter Umständen die Icons nicht wieder angezeigt

Schreibt was ihr von der Kompo haltet und was man noch alles ändern könnte!!
Angehängte Dateien
Dateityp: zip test_112.zip (7,7 KB, 166x aufgerufen)
Dateityp: zip shelliconlistview_446.zip (2,3 KB, 124x aufgerufen)
  Mit Zitat antworten Zitat