Home » Tipps & Tricks » Grafik » Sonstiges » Screenshot des Windows-Desktops
Screenshot des Windows-Desktops
Folgende Prozedur macht einen Screenshot des Windows-Desktops und entspricht dem Ergebnis, das durch die Taste „DRUCK“ erzeugt wird.
procedure MakeScreenShot(const ATarget: TBitmap); var DesktopDC: HDC; begin DesktopDC := CreateDC('DISPLAY', nil, nil, nil); try ATarget.PixelFormat := pfDevice; ATarget.Width := Screen.Width; ATarget.Height := Screen.Height; BitBlt(ATarget.Canvas.Handle, 0, 0, Screen.Width, Screen.Height, DesktopDC, 0, 0, SRCCOPY); finally DeleteDC(DesktopDC); end; end;
Die Prozedur erwartet als Parameter ein Objekt vom Typ TBitmap:
procedure TForm1.Button1Click(Sender: TObject); begin MakeScreenShot(Image1.Picture.Bitmap); Image1.Repaint; end;