1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| function CopierEcran(xe, ye, we, he: integer): tBitMap;
// xe, ye = Coordonnées écran de l'angle supérieur gauche de la Zone à copier.
// we, he = Width et Height de la Zone à copier
var HandleDC: HDC; Picture: TPicture;
begin
HandleDC := GetDC(GetDesktopWindow);
Picture:= TPicture.Create;
try
Picture.Bitmap.PixelFormat := pf32bit;
Picture.Bitmap.Width := we;
Picture.Bitmap.Height := he;
BitBlt(Picture.Bitmap.Canvas.Handle, 0, 0, we, he,
HandleDC, xe, ye, SrcCopy); //recopie l'image de la région d'écran dans PictureBureau
finally
Result := tBitMap.create;
Result.Assign(Picture.BitMap);
ReleaseDC(GetDesktopWindow, HandleDC);
end;
end; // CopierEcran(xe,ye,we,he : integer); |
Partager