Winform屏幕截图保存C#代码

代码如下:已在项目中实现:http://hovertree.com/h/bjaf/76q5yeli.htm

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

全栈程序员社区此处内容已经被作者隐藏,请输入验证码查看内容
验证码:
请关注本站微信公众号,回复“验证码”,获取验证码。在微信里搜索“全栈程序员社区”或者“www_javaforall_cn”或者微信扫描右侧二维码都可以关注本站微信公众号。

代码如下:

 1 using System.Runtime.InteropServices;
 2 using System.Drawing.Imaging;
 3 
 4  
 5 
 6     [System.Runtime.InteropServices.DllImportAttribute("gdi32.dll")]
 7     private static extern bool BitBlt(
 8 
 9                     IntPtr hdcDest,   //   目标   DC的句柄   
10                     int nXDest,
11                     int nYDest,
12                     int nWidth,
13                     int nHeight,
14                     IntPtr hdcSrc,     //   源DC的句柄   
15                     int nXSrc,
16                     int nYSrc,
17                     System.Int32 dwRop     //   光栅的处理数值   
18                       ); 
19 
20  
21 
22   private   void   button1_Click(object   sender,   System.EventArgs   e)   
23   {   
24   //获得当前屏幕的大小   http://www.cnblogs.com/roucheng/
25   Rectangle   rect   =   new   Rectangle   (   )   ;   
26   rect   =   Screen.GetWorkingArea   (   this   )   ;   
27   //创建一个以当前屏幕为模板的图象   
28   Graphics   g1   =   this.CreateGraphics   (   )   ;   
29   //创建以屏幕大小为标准的位图     
30   Image   MyImage   =   new   Bitmap   (   rect.Width   ,   rect.Height   ,   g1   )   ;   
31   Graphics   g2   =   Graphics.FromImage   (   MyImage   )   ;   
32   //得到屏幕的DC   
33   IntPtr   dc1   =   g1.GetHdc   (   )   ;   
34   //得到Bitmap的DC     
35   IntPtr   dc2   =   g2.GetHdc   (   )   ;   
36   //调用此API函数,实现屏幕捕获   
37   BitBlt   (   dc2   ,   0   ,   0   ,   rect.Width   ,   rect.Height   ,   dc1   ,   0   ,   0   ,   13369376   )   ;   
38   //释放掉屏幕的DC   
39   g1.ReleaseHdc   (   dc1   )   ;   
40   //释放掉Bitmap的DC     
41   g2.ReleaseHdc   (   dc2   )   ;   
42   //以JPG文件格式来保存   
43   MyImage.Save   (   @"c:/Capture.jpg"   ,   ImageFormat.Jpeg   );   
44   MessageBox.Show   (   "当前屏幕已经保存为C盘的capture.jpg文件!"   )   ;   
45   }

 已在项目中实现:http://hovertree.com/h/bjaf/76q5yeli.htm

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/120703.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Spark和Hadoop的区别和比较[通俗易懂]

    Spark和Hadoop的区别和比较[通俗易懂]目录一、两者的各方面比较二、Spark相对Hadoop的优越性三、三大分布式计算系统Spark,是分布式计算平台,是一个用scala语言编写的计算框架,基于内存的快速、通用、可扩展的大数据分析引擎Hadoop,是分布式管理、存储、计算的生态系统;包括HDFS(存储)、MapReduce(计算)、Yarn(资源调度)一、实现原理的比较Hadoop和Spark都是并…

    2022年10月28日
  • iOS 单元測试之XCTest具体解释(一)[通俗易懂]

    iOS 单元測试之XCTest具体解释(一)

    2022年1月21日
  • 软件测试的一点知识[1]

    软件测试的一点知识[1]

    2021年8月1日
  • Python 进阶 — Flake8 静态代码检查工具

    Python 进阶 — Flake8 静态代码检查工具目录文章目录目录Flake8错误返回码安装使用插件Flake8Flake8是由Python官方发布的一款静态代码检查工具(https://pypi.python.org/pypi/flake8/),相对于PyLint而言,Flake8的检查规则灵活,支持集成额外插件,扩展性强。Flake8是对下面3个工具的封装:PyFlakes:静态检查Python代码逻辑错误的工具。PEP8:静态检查PEP8编码风格的工具。NedBatchelder’sMcCabe:静态分析P

    2022年9月4日
  • php 对象转json_php json解析

    php 对象转json_php json解析在PHP中,可以使用json_decode()函数来将json字符串转换为PHP对象。json_decode()函数用于解码JSON字符串,把json字符串转成对象或数组,默认转成对象;设置函数的第二个参数为true,则可转成关联数组。json_decode()函数是PHP中的内置函数,用于对JSON格式的字符串进行解码,可以将JSON格式的字符串转换为PHP变量(object或array)。…

    2022年10月7日
  • linux系统查看网卡命令_linux如何配置网卡

    linux系统查看网卡命令_linux如何配置网卡rhel内核版本号信息:[root@hvrhub~]#uname-aLinuxhvrhub2.6.18-308.el5#1SMPFriJan2717:17:51EST2012x86_64x86_64x86_64GNU/Linux查看网卡的驱动。制造商等信息:[root@hvrhub~]#kudzu–probe–class=network-class:…

    2022年10月19日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号