Registriert seit: 4. Mai 2005
846 Beiträge
Delphi 7 Enterprise
|
Re: Einen bestimmten Bereich des Bildschirm speichern
16. Jan 2007, 14:27
Warum alles so kompliziert, mach einen screeshot vom gesammten Fenster
und kopiere deinen Ausschnitt.
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
WinDC,MemDC : hDC;
Desktop : hBitmap;
zx,zy,zx1,zy1 : integer;
bmp : TBitmap;
begin
zx := 100;
zy := 100;
zx1:= 100;
zy1:= 100;
WinDC := GetDC (GetDeskTopWindow); {Bildschirmkontext holen}
MemDC := CreateCompatibleDC (WinDC); {Kompatiblen Kontext erstellen}
Desktop := CreateCompatibleBitmap (WinDC, zx, zy); {Bitmaphandle machen}
SelectObject (MemDC, Desktop); {selektieren}
BitBlt (MemDC, 0, 0, zx, zy, WinDC, zx1, zy1, SRCCOPY); {kopieren}
DeleteDC (MemDC); {und wech damit}
ReleaseDC (GetDeskTopWindow, WinDC); {diesen auch}
bmp := TBitmap.Create;
try
bmp.Handle := Desktop;
Image1.Picture.Bitmap.Assign(bmp);
finally
FreeAndNil(bmp);
end;
end;
Blackheart
|
|
Zitat
|