c# 获取当前活动窗口句柄,获取窗口大小及位置
可以利用Graphics类的CopyFromScreen方法来实现屏幕截取,舍弃了比较麻烦的API函数,只要几句代码就能实现了,而且这个这个方法能实现只抓取部分区域的屏幕,可以实现类似qq抓屏的功能。
- <span style="color:#330099;">using System;
- using System.Collections.Generic;
- using System.Text;
- using System.Drawing;
- using System.Drawing.Imaging;
- using System.Windows.Forms;
- namespace ConsoleApplication1
- ...{
- class Program
- ...{
- static void Main(string[] args)
- ...{
- //获得当前屏幕的分辨率
- Screen scr = Screen.PrimaryScreen;
- Rectangle rc = scr.Bounds;
- int iWidth = rc.Width;
- int iHeight = rc.Height;
- //创建一个和屏幕一样大的Bitmap
- Image myImage = new Bitmap(iWidth, iHeight);
- //从一个继承自Image类的对象中创建Graphics对象
- Graphics g = Graphics.FromImage(myImage);
- //抓屏并拷贝到myimage里
- g.CopyFromScreen(new Point(0, 0), new Point(0, 0), new Size(iWidth, iHeight));
- //保存为文件
- myImage.Save(@"c:/1.jpeg");
- }
- }
- }</span>