Einzelnen Beitrag anzeigen

Blackheart

Registriert seit: 4. Mai 2005
846 Beiträge
 
Delphi 7 Enterprise
 
#15

Re: Einen bestimmten Bereich des Bildschirm speichern

  Alt 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
  Mit Zitat antworten Zitat