本文實例敘述了Delphi實作截圖記憶體的方法。分享給大家供大家參考。具體分析如下:
此實例可實現截取螢幕,並儲存為JPEG檔案格式的功能。
procedure TForm1.ScreenCap(LeftPos,TopPos,RightPos,BottomPos:integer);var RectWidth,RectHeight:integer; SourceDC,DestDC,Bhandle:integer; Bitmap:TBitmap; MyJpeg: TStreamJpegImage;JImTMgemoryM.Pwm.IpemagePate:IpegpemagePate:Ipegw.Ipeg早期. ; RectWidth:=RightPos-LeftPos; RectHeight:=BottomPos-TopPos; SourceDC:=CreateDC('DISPLAY','','',nil); DestDC:=CreateCompatibleDC(SourceDC); Bhandle:=CreateCompatibleBitmap(Rect,Fight, Rect,Fight,RectHeatibleB, Rect,Fight, Rect,Fight); ); SelectObject(DestDC,Bhandle); BitBlt(DestDC,0,0,RectWidth,RectHeight,SourceDC, LeftPos,TopPos,SRCCOPY); Bitmap:=TBitmap.Create; Bitmap.Handle:=BHandle; Stream := TMemoryStream.Create; Bitmap.Handle:=BHandle; Stream := TMemoryStream.Create; Bitmap.SaveStreamStream(Stream); .Free; try MyJpeg.Assign(Bitmap); MyJpeg.CompressionQuality:=70; MyJpeg.Compress; MyJpeg.SaveToFile('C:MyJPEGImage.JPG'); finally MyJpeg.Free; Bitmap.Free; DeleteDC(DestDC); ReleaseDC(Bhandle,Source,Source);希望本文所述對大家的Delphi程式設計有幫助。