Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi VirtualTreeView und TPNGImageList (https://www.delphipraxis.net/100281-virtualtreeview-und-tpngimagelist.html)

moonwhaler 25. Sep 2007 16:34


VirtualTreeView und TPNGImageList
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo zusammen.

Sitze derzeit noch an meiner in einem anderen Thread beschriebenen Logging-Klasse, jetzt bin ich aber bereits zum "User Interface" vorgerückt. Leider, wie so oft, ergibt sich auch hier ein kleines Problem:
Ich würde gerne als Bilder im VirtualTreeView (StringTree), welcher mir das Log darstellen soll, PNG Dateien benutzen. Bisher habe ich Bitmaps verwendet, da ich aber sehr viele PNG besitze und die aufgrund der Transparenz auch vielseitig einsetzbar sind, dachte ich, dass ich es einmal damit teste.

Also habe ich mir die "TPNGImageList" Komponente von http://thany.org/ besorgt und installiert. Soweit so gut. Auch das befüllen der Liste mit Bildchen und Zuweisen der ImageList zum VirtualStringTree haben hervorragend geklappt - dachte ich. Wenn ich mir nun das Logging anzeigen lasse, sieht das sehr seltsam aus. Es scheint, als seien die Transparenzen etwas zu großzügig verwendet worden (siehe Screenshot) - die Originale sind aber i.O....

Weiß hier vielleicht jemand Rat?


Vielen Dank für die Hilfe...
moon

Nuclear-Ping 25. Sep 2007 18:13

Re: VirtualTreeView und TPNGImageList
 
Wie zeichnest du denn die Bilder?

moonwhaler 26. Sep 2007 07:39

Re: VirtualTreeView und TPNGImageList
 
Überhaupt nicht. Das überlasse ich brav der VT Komponente, da ich bisher davon ausgegangen bin, dass sich die TPNGImageList wie eine gewöhnliche TImageList verhält. Entsprechend auch nicht zwangsläufig ein manueller Eingriff nötig wäre... :stupid:

Nuclear-Ping 27. Sep 2007 10:51

Re: VirtualTreeView und TPNGImageList
 
Naja, dann versuch doch mal, das Bild in OnAfterCellPaint selber zu zeichnen. Die ganzen Infos über Spalte, Canvas usw. kriegst du als Parameter des Events übergeben.
Sollte also bei dir so sein: if Column = 0 then TargetCanvas.Draw (...) oder so, kA. :P

Gruber_Hans_12345 27. Sep 2007 11:12

Re: VirtualTreeView und TPNGImageList
 
irgendwie sieht das aus, als ob du die ghosted zeichnen läst

stelle sicher, das du ghosted auf false setzt im OnGetImageIndex


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:33 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz