Tengo un bitmapbutton que carga el bmp de un componente imageresource.
Al iniciar el programa, le cargo la imagen con el siguiente código:
Código Delphi
[-]
DataModule.imageResources.GetBitmap(0, bbAL.Glyph);
y no tengo ningún problema.
Pero al intentar cambiarlo en el evento
Código Delphi
[-]
procedure TGraphForm.bbALClick(Sender: TObject);
begin
if bAL then
begin
DataModule.imageResources.GetBitmap(4, bbAL.Glyph);
bAL := False
end
else
begin
DataModule.imageResources.GetBitmap(0, bbAL.Glyph);
bAL := True
end
end;
Entra pero no hace nada. El booleano está declarado como variable global y esa condición la cumple sin problemas.
No se me ocurre como hacerlo, pero he encontrado este código que tampoco acabo de comprender completamente:
Código Delphi
[-]
var
MyBtnGlyph: HBitmap;
MyBtnBmp: TBitmap;
begin
MyBtnBmp := TBitmap.Create;
MyBtnGlyph := LoadBitmap(HINSTANCE, 'MYBMP');
MyBtnBmp.Handle := MyBtnGlyph;
MyBtn.Glyph := MyBtnBmp;
MyBtn.NumGlyphs := 1;
MyBtnBmp.Free;
end;
Se que
"MyBtn" ha de ser
"bbAL", pero la linea de
"MyBtnGlyph := LoadBitmap(HINSTANCE, 'MYBMP');"
me tiene totalmente perdido, ya que no se a que hace referencia
"MYBMP" ya que tengo las imagenes en el imagelist e indexadas.
Gracias por la ayuda y mientras sigo mirando.
Papulo.