Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   como cargar un tbitmap desde un recurso? (https://www.clubdelphi.com/foros/showthread.php?t=54335)

mario2000 14-03-2008 19:24:33

como cargar un tbitmap desde un recurso?
 
Hola estoy tratando de cargar un tbitmap con un bmp desde un recurso asi:

creo el recurso asi:
un archivo que llamo:
Imagenes.RC
el cual contiene lo siguiente:
1 RCDATA dibujo.jpg
2 RCDATA esponja.jpg
3 RCDATA imagen.bmp

compilo con el siguiente comando
BRC32.EXE -r -v Imagenes.RC

luego agrego en mi codigo:
implementation
{$R *.dfm}
{$R Imagenes.RES}

asta aca todo bien


en el codigo de un boton agrego:

procedure TForm1.Button1Click(Sender: TObject);
var
imagen:TBitmap;
begin
imagen:=TBitmap.Create;
imagen.LoadFromResourceName(hInstance,'imagen.BMP');
end;

me compila bien pero cuando presiono el boton me da error diciendo que
el recurso imagen.BMP no existe.
Yo Pregunto ¿que falta?
y como seria la mejor forma de cargar una imagen bmp en un TImage desde el mismo recurso.
gracias por su atencion.

ixMike 14-03-2008 19:32:56

Aquí te dice cómo hacerlo:
http://www.q3.nu/trucomania/truco.cgi?361&esp

El ejemplo es ocn un JPG, pero es aplicable a un BMP, un ICO....


Salu2 :)

mario2000 14-03-2008 19:45:53

hola
 
Gracias por responder pero yo tambien tengo la trucomania de delphi de q3 :p
y ya lo hise y me funciona con jpegs pero no es igual con bmps ya lo intente cambiando los jpegimages por bmps images y no los admite :(, entonses pienso que esa no es la forma

ixMike 14-03-2008 19:52:55

Ahora mismo no tengo Delphi a mano, pero estoy seguro de que esto funciona:

Código Delphi [-]
procedure TfSplash.FormCreate(Sender: TObject);
 var
    Corriente   : TResourceStream;
    Imagen      : TBitmap;
 begin
   Imagen:=TBitmap.Create;
   Corriente:=TResourceStream.Create(hInstance, '#1', RT_RCDATA );
   Corriente.Seek(0,soFromBeginning);
   Imagen.LoadFromStream(Corriente);
   Image1.Canvas.Draw(0,0,Imagen);
   Imagen.Free;
   Corriente.Free;
 end;


Salu2.

mario2000 14-03-2008 19:59:27

Ok bien
 
Ahora si me funciono tal ves me falto algo pero no se que por que habia comenzado de nuevo.

mario2000 15-03-2008 19:32:28

Nesesito copiar un bmp en un tbitmap
 
:confused: No encuentro la forma de copiar un bmp de un recurso en un objeto tbitmap. Le cuento: es que estoy usando un truco que encontre en aca para colocar una imagen de fondo pero no queda bien que la imagen tenga que estar en un directorio si no mas bien en el propio ejecutable. La funcion coloca el bmp en un tbitmap y luego la pasa al form, asi que si logro copiar del recurso lo demas esta hecho. Espero me puedan ayudar. :o

ixMike 15-03-2008 20:12:23

No lo entiendo. Si dices que el código que te he puesto funciona, ¿dónde está el problema? El recurso se carga en un Bitmap.:confused:


La franja horaria es GMT +2. Ahora son las 03:34:36.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi