Title: Get image on the button
Use GetDC function (this function returns handle of a display device context) and Handle method of Bitmap.Canvas for assigning result of GetDC function with it.
procedure TForm1.Button1Click(Sender: TObject);
var
Bitmap, Bitmap2: TBitmap;
ButHandle: THandle;
Rec: TRect;
begin
Bitmap:=TBitmap.Create;
Bitmap2:=TBitmap.Create;
Bitmap2.LoadFromFile('factory.bmp');
Rec:=Rect(2, 2, Button1.Width-2, Button1.Height-2);
ButHandle:=GetDC(Button1.Handle);
Bitmap.Canvas.Handle:=ButHandle;
Bitmap.Canvas.StretchDraw(Rec, Bitmap2);
end;