image delphi firemonkey

image - Cómo almacenar imágenes en FireMonkey?



delphi (5)

En VCL, tenía ImageList para almacenar imágenes. En FireMonkey no hay control ImageList . ¿Cómo guardo las imágenes en FireMonkey para usarlas más adelante?


Agregue sus imágenes como recurso a través de Project > Resources and Images .


Como no hay ImageList en Delphi Android, tienes que:

  1. Agregue sus imágenes a su proyecto

    Proyecto -> Recursos e Imágenes

  2. Delcare las imágenes en ''Recursos e imágenes'' como ResourceType RCDATA

  3. Agregue este procedimiento:

->

procedure TForm1.load_image_from_resource(var Im1: Timage; res_name: String); var InStream: TResourceStream; begin InStream := TResourceStream.Create(HInstance, res_name, RT_RCDATA); try Im1.Bitmap.LoadFromStream(InStream); finally InStream.Free; end; end

A continuación, cargue sus imágenes con, por ejemplo:

var i : nativeint; begin i := 1; load_image_from_resource(Image1, ''Bitmap_'' + inttostr(i)); end;

De todas partes.


Para agregar imágenes en FireMonkey (XE4)

Project -> Resources and Images

Entonces para acceder:

procedure TForm1.Button1Click(Sender: TObject); var InStream: TResourceStream; begin InStream := TResourceStream.Create(HInstance, ''MyPng'', RT_RCDATA); try Image1.Bitmap.LoadFromStream(InStream); finally InStream.Free; end; end;

Gracias a Peter Vonča


Para las personas que están viendo esta pregunta ahora, dado que Delphi XE8 FireMonkey tiene el componente TImageList


Ponga un TPopupMenu en su formulario y agregue algunos elementos de menú y asigne TBitmap de cada TMenuItem. Entonces puedes acceder a bitmaps con esta expresión:

PopupMenu1.Items[index].Bitmap

o

MenuItem1.Bitmap MenuItem2.Bitmap ...