Registriert seit: 1. Jul 2013
Ort: Hamburg
241 Beiträge
Delphi 10.4 Sydney
|
AW: Wie verwendet man die neue TVirtualImageList
12. Mai 2020, 08:30
Moin Moin.
Etwas älterer Thread, Problem ist trotzdem noch da:
Auf meiner Form habe ich ein TImageCollection Element plaziert und 163 PNG's in 128x128px geladen. Diese Collection wird dann in der TVirtualImageList angegeben das als Height/Width eine 32 hat. Infolge werden bei Controls wie dem Listview die optisch einwandfrei skalierten Bildchen als 32er angezeigt.
Ein solch sauber skaliertes Bild möchte ich jetzt aber auch einem TImage zuweisen, wie ja die Kernfrage des Threads hier war.
Die weiter oben angegebene Empfehlung wäre in meinem Fall
Image1.Picture.Graphic := ImageCollection1.GetSourceImage(ImageCollection1.GetIndexByName('icon'), 32,32);
Was dann aber im Ergebnis wieder eine tödliche Bildqualität produziert weil ich für das TImage ja Stretch benutzen muss. Oder?
Also hole ich mir via
VirtualImageList1.GetBitmap(Main.VirtualImageList1.GetIndexByName('BILD'),Image1.Picture.Bitmap)
das gewünschte Bild, das auch prompt und in guter Qualität kommt. Und natürlich ohne Transparenz, die ich benötige.
Frage : Wie kriege ich transparenz?
Oder : wie überrede ich TImageCollection mir das Bildchen in hübsch skaliert abzuliefern? Für was ist sonst die Property InterpolationMode gedacht?
creehawk
|