Arbeitet VirtualStringTree intern mit Threads?
Weil ich selber nicht an dieser Stelle. Mit Bitmaps mache ich auch nichts.
Wenn das VST 10000 Einträge hat, jeder Eintrag 6 Spalten und jeweils 2 Icons und man richtig wild rauf und runter fährt, kommt es auch irgendwann zu dem Fehler.
Definitiv kommt es aber zu dem Fehler, wenn man auf einen Spalten-Trenner doppel-klickt, damit die Spalte die Auto-Breite bekommt. Dann kommt auch irgendwann Systemresourcen erschöpft und Canvas erlaubt kein Zeichnen.
FormCreate
Delphi-Quellcode:
SmallImages := TImageList.Create(Self);
SystemImageList := SHGetFileInfo('', 0, Info, SizeOf(TSHFileInfo), SHGFI_USEFILEATTRIBUTES or SHGFI_ICON or SHGFI_SYSICONINDEX or SHGFI_SMALLICON);
SmallImages.Handle := SystemImageList;
SmallImages.ShareImages := True;
VST.Images := SmallImages;
Und dann, egal wo, ob im GetImageIndex oder InitNode oder wo auch immer, sobald ich mit SHGetFileInfo arbeite um an die Icons zu kommen, kommen die Probleme.
Die Icons werden alle angezeigt, das ist kein Problem. Aber wild rumscrollen und sowas erzeugt dann irgendwann einfach ein einfrierendes/schwarzes Fenster.