Ver Mensaje Individual
  #1  
Antiguo 30-06-2006
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - Espańa
Posts: 18.275
Reputación: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Captura de pantalla en un Bitmap

żCómo se puede capturar la pantalla en un bitmap?

Sobre un formulario, coloca un TImage y un TButton. Copia el siguiente código:

Código Delphi [-]
procedure ScreenShot (Image : TBitmap);
var
  DC : HDC;

begin
  DC := GetDC (GetDesktopWindow);
  // Proteccion para liberar
  try
    Image.Width := GetDeviceCaps (DC, HORZRES);
    Image.Height := GetDeviceCaps (DC, VERTRES);
    BitBlt(Image.Canvas.Handle, 0, 0, Image.Width,
    Image.Height,DC, 0, 0, SRCCOPY);
  finally
    ReleaseDC (GetDesktopWindow, DC);
  end;
end;

Para utilizarlo puedes usar éste código en el OnClick del Botón:

Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
begin
  ScreenShot(Image1.Picture.Bitmap);
end;
Responder Con Cita