Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#6

AW: Bild in Imagelist durch ein anderes Ersetzen - zur Laufzeit

  Alt 5. Okt 2014, 19:31
Eine TImageList beinhaltet nunmal ausschließlich nur Bitmaps/Icons. Denn das Ding ist "nur" eine Schnittstelle zur entsprechenden Windows-Komponente, welche man beim Bei Google suchenImageList_Create rausbekommt.

Ob nun der Bilderlisten-Editor der VCL auch den Import von anderen Grafikformaten anbietet ist davon unabhängig.
Die API bietet jedoch nur den Import von Bitmap/Icon (Bei Google suchenImageList_Replace, Bei Google suchenImageList_LoadImage, Bei Google suchenImageList_AddIcon usw.) an
und wenn Emba in seiner Komponente es nicht einbaut auch andere Grafikformate anzubieten, was vollkommen verständlich ist diese Komponenten standardmäßig immer in alle Programme einzubinden, dann hast du eben Pech und mußt diese Grafiken eben selber laden, in TBitmap (Image und Mask, bei Transparenzen) umwandeln und dann entsprechend zu übergeben.


Wenn es möglich wäre mehrere ClassHelper an einen Typen zu binden, dann könnte man in die Units der jeweiligen PNG/JPEG/GIF-Komponenten die entsprechenden Lade-/Zugriffsfunktionen für TImageList, TPicture und Co. nachrüsten.



Diue FMX-ImageList wird intern wohl alles selber machen, weswegen dort andere Spielregel gelten, aber auch dort wäre es "blöd", wenn man dort alle in Delphi vorhandenen Grafikformate direkt anbietet. (man könnte dessen Schnittstelle aber als TGraphic deklarieren und indirekt alles, der aktuell geladenen Units, ermöglichen)
$2B or not $2B

Geändert von himitsu ( 5. Okt 2014 um 19:37 Uhr)
  Mit Zitat antworten Zitat