Delphi实现截屏存盘的方法

 更新时间:2015年05月08日 15:56:31   作者:xujh  
这篇文章主要介绍了Delphi实现截屏存盘的方法,涉及Delphi图片操作的相关技巧,需要的朋友可以参考下

本文实例讲述了Delphi实现截屏存盘的方法。分享给大家供大家参考。具体分析如下:

该实例可实现截取屏幕,并保存为JPEG文件格式的功能。

procedure TForm1.ScreenCap(LeftPos,TopPos,RightPos,BottomPos:integer);
var
 RectWidth,RectHeight:integer;
 SourceDC,DestDC,Bhandle:integer;
 Bitmap:TBitmap;
 MyJpeg: TJpegImage;
 Stream:TMemoryStream;
begin
 MyJpeg:= TJpegImage.Create;
 RectWidth:=RightPos-LeftPos;
 RectHeight:=BottomPos-TopPos;
 SourceDC:=CreateDC('DISPLAY','','',nil);
 DestDC:=CreateCompatibleDC(SourceDC);
 Bhandle:=CreateCompatibleBitmap(SourceDC,
 RectWidth,RectHeight);
 SelectObject(DestDC,Bhandle);
 BitBlt(DestDC,0,0,RectWidth,RectHeight,SourceDC,
 LeftPos,TopPos,SRCCOPY);
 Bitmap:=TBitmap.Create;
 Bitmap.Handle:=BHandle;
 Stream := TMemoryStream.Create;
 Bitmap.SaveToStream(Stream);
 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,SourceDC);
 end;
end;

希望本文所述对大家的Delphi程序设计有所帮助。

相关文章

  • Delphi实现毫秒级别的倒计时实例代码

    Delphi实现毫秒级别的倒计时实例代码

    这篇文章主要介绍了Delphi实现毫秒级别的倒计时实例代码,需要的朋友可以参考下
    2014-07-07
  • Delphi实现读取系统时间与日期完整实例

    Delphi实现读取系统时间与日期完整实例

    这篇文章主要介绍了Delphi实现读取系统时间与日期完整实例,需要的朋友可以参考下
    2014-07-07
  • Delphi实现限定软件使用时间的方法

    Delphi实现限定软件使用时间的方法

    这篇文章主要介绍了Delphi实现限定软件使用时间的方法,商业软件开发中非常实用的功能,需要的朋友可以参考下
    2014-07-07
  • 修改 Delphi 10.3.3 IDE 字体和字体大小

    修改 Delphi 10.3.3 IDE 字体和字体大小

    Delphi,是Windows平台下著名的快速应用程序开发工具(Rapid Application Development,简称RAD)。这篇文章主要介绍了修改 Delphi 10.3.3 IDE 字体和字体大小,需要的朋友可以参考下
    2019-11-11
  • Delphi修改操作注册表权限的代码

    Delphi修改操作注册表权限的代码

    Delphi修改操作注册表权限的代码,使用Delphi的朋友可以参考下。
    2011-09-09
  • Delphi 调用外部程序并阻塞到外部程序中

    Delphi 调用外部程序并阻塞到外部程序中

    这篇文章主要介绍了Delphi 调用外部程序并阻塞到外部程序中的相关知识,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-09-09
  • Java中CountDownLatch和CyclicBarrier的区别与详解

    Java中CountDownLatch和CyclicBarrier的区别与详解

    CountDownLatch和CyclicBarrier是Java并发包提供的两个非常易用的线程同步工具类,本文主要介绍了Java中CountDownLatch和CyclicBarrier的区别与详解,具有一定的参考价值,感兴趣的可以了解一下
    2023-11-11
  • 插件管理框架 for Delphi(一)

    插件管理框架 for Delphi(一)

    插件管理框架 for Delphi许多软件采用“插件”(PlugIns)来扩展其功能,比如PhotoShop所支持的各类滤镜就是插件;我们所熟知的Winamp,也有许多皮肤以及可视效果插件。再有微软的windows media player,以及QQ,冲浪软件Opera……采用插件技术的软件数不胜数,而各个软件的具体实现方式也是五花八门,各有特点。
    2008-03-03
  • Delphi实现碰撞球体完整实例代码

    Delphi实现碰撞球体完整实例代码

    这篇文章主要介绍了Delphi实现碰撞球体完整实例代码,通过该实例,读者可以完整的了解一个Delphi项目的创建过程,加深对Delphi运行原理的了解,需要的朋友可以参考下
    2014-07-07
  • Delphi 中内存映射对于大文件的使用

    Delphi 中内存映射对于大文件的使用

    这篇文章主要介绍了Delphi 中内存映射对于大文件的使用的相关资料,希望通过本文能帮助到大家,需要的朋友可以参考下
    2017-09-09

最新评论