![]() |
Screenshot generieren?
Hi,
gibts ne Funktion oder so, womit ich n Screenshot vom aktuellen Bildschirm erstellen kann? Hab per Suchfunktion "Screenshot" nichts passendes gefunden... :) |
Re: Screenshot generieren?
:gruebel:
![]() ![]() ![]() ![]() Mit freundlichen Grüßen, Valle |
Re: Screenshot generieren?
Moin, Moin.
Hier ein CodeSchnipsel, habe ich noch nie benutzt und kann daher nicht sagen ob das funktioniert. Die Quelle kann ich auch nicht mehr benennen - ist jeden falls nicht von mir! Die Prozedur speichert im übergebenen TBitmap ein Abbild des aktuellen Windows-Desktops. Wenn man einen Screenshot eines bestimmten Fensters oder Controls haben möchte, besorgt man sich das Handle dieses Fensters und ermittelt dann den Bildauschnitt mit der API-Funktion GetWindowRect(..). Diesen Ausschnitt kopiert man dann einfach aus dem Desktop-Screenshot.
Delphi-Quellcode:
Gruß Ralph
procedure ScreenCapture(Bmp:TBitmap);
var DeskWnd : HWnd; DeskDC : HDC; DeskCv : TCanvas; R : TRect; W,H : Integer; begin if Bmp=nil then exit; DeskWnd:=GetDesktopWindow; DeskDC :=GetWindowDC(DeskWnd); DeskCv :=TCanvas.Create; DeskCv.Handle:=DeskDC; W:=Screen.Width; H:=Screen.Height; R:=Bounds(0,0,W,H); try Bmp.HandleType :=bmDIB; Bmp.PixelFormat :=pf24Bit; Bmp.Width :=W; Bmp.Height :=H; Bmp.Canvas.CopyMode:=cmSrcCopy; Bmp.Canvas.CopyRect(R,DeskCv,R); finally DeskCv.Free; ReleaseDC(DeskWnd,DeskDC); end; end; PS : Gib bitte Info, wenn's damit funktioniert! |
Re: Screenshot generieren?
Also ich benutze auch eine Funktion um einen Screenshot zu machen...
Zitat:
Delphi-Quellcode:
Ansonsten einfach mal googeln
procedure TForm1.Button1Click(Sender: TObject);
begin MakeScreenShot(Image1.Picture.Bitmap); Image1.Repaint; end; ![]() rollstuhlfahrer |
Re: Screenshot generieren?
und beide Schnipsel würde ich nicht verwenden weil gar nicht geprüft wird ob die Funktionen erfolgreich aufgerufen werden konnten
|
Re: Screenshot generieren?
das kann dann der Nutzer dieser Schnipsel selbst hinzufügen, oder lassen. Mein Schnipsel funktioniert .
rollstuhlfahrer |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:28 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz