当前位置:编程学习 > C#/ASP.NET >>

【急!!】怎么用C#实现directx 抓屏?

大家都帮帮忙啦~~ --------------------编程问答-------------------- 类似QQ的截图工具? --------------------编程问答-------------------- Graphics.CopyScreen() --------------------编程问答-------------------- 老师让我们做一个电子教室,实现广播教学。可是我抓的屏幕都没鼠标。 --------------------编程问答-------------------- http://www.cnblogs.com/dragon-china/archive/2007/10/10/919573.html --------------------编程问答--------------------
引用 2 楼 hyttplay 的回复:
Graphics.CopyScreen()

能再详细点吗?这个东西部太懂。。。。谢谢大家啦 --------------------编程问答--------------------
引用 4 楼 porschev 的回复:
http://www.cnblogs.com/dragon-china/archive/2007/10/10/919573.html

这个好像截下来也没鼠标啊。。。 --------------------编程问答-------------------- 说错了,是 Graphics.CopyFromScreen 方法
有3个重载,将屏幕拷贝
重载1:Graphics.CopyFromScreen (Point, Point, Size) 
      第一个 Point,指屏幕上左上角的顶点(表示从从哪开始截取)
       第二个 Point,指目标图片左上角的顶点
       Size 表示要截取的大小

示例:

public Image CopyScreen()
{
  Bitmap bmp = new Bitmap(500,500);
  Graphics g = Graphics.FromImage(bmp);
           g.CopyFromScreen(new Point(0,0),new Point(0,0),new Size(bmp.Width,bmp.Height);

  return bmp;
}
--------------------编程问答--------------------
引用 7 楼 hyttplay 的回复:
说错了,是 Graphics.CopyFromScreen 方法
有3个重载,将屏幕拷贝
重载1:Graphics.CopyFromScreen (Point, Point, Size) 
      第一个 Point,指屏幕上左上角的顶点(表示从从哪开始截取)
       第二个 Point,指目标图片左上角的顶点
       Size 表示要截取的大小

示例:
C# ……


谢谢,请问,知道怎么截取鼠标吗?是获取鼠标未知再画一个? --------------------编程问答-------------------- 你说的也不妨是一个办法,获取鼠标所在的位置,得到鼠标使用的样式图片,再将其画在图片上面 --------------------编程问答--------------------
引用 9 楼 hyttplay 的回复:
你说的也不妨是一个办法,获取鼠标所在的位置,得到鼠标使用的样式图片,再将其画在图片上面

这是我想的,我想知道,就不能截出带鼠标的图?或者一般是什么方法 --------------------编程问答-------------------- 什么函数可以是C#获取当前鼠标样式! --------------------编程问答-------------------- 忘了在哪看到的,好像要使用 api函数获取 --------------------编程问答-------------------- DirectX里面的DriectShow,可以实现抓屏
http://topic.csdn.net/u/20090911/14/5614a16e-ab08-4106-901e-e8dcc5cd1fa3.html --------------------编程问答-------------------- 抓屏代码很简单,
   private Bitmap GetScreenImage()
        {
            Bitmap bmp = new Bitmap(Screen.PrimaryScreen.Bounds.Width,
                                    Screen.PrimaryScreen.Bounds.Height);
            Graphics g = Graphics.FromImage(bmp);
            g.CopyFromScreen(0, 0, 0, 0, Screen.PrimaryScreen.Bounds.Size);
            g.Dispose();

            return bmp;
        }
加上用Rectangle绘制鼠标画出的区域就可以实现。网上例子无数
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,