首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

怎么保存当前窗体为图片

2012-04-21 
如何保存当前窗体为图片?有没有知道一些的???this.Focus()SendKeys.Send(%{PRTSC})IDataObject ido

如何保存当前窗体为图片?
有没有知道一些的???
  this.Focus();
  SendKeys.Send("%{PRTSC}");
  IDataObject ido = Clipboard.GetDataObject();
  try
  {
  Image img = (Image)ido.GetData(DataFormats.Bitmap);
  img.Save(@"d:\1.bmp", System.Drawing.Imaging.ImageFormat.Bmp);
  }
  catch (System.Exception e1)
  {
  MessageBox.Show(e1.Message.ToString());
  }

这个代码有时候会抛出异常,有没有更好的代码参考一下

[解决办法]
没做过,帮顶了
[解决办法]
mark
[解决办法]
http://topic.csdn.net/u/20080806/10/d1873709-4f50-4cd0-834e-c58c1d7a0cc9.html
[解决办法]
那天看到过,帮你找找看
[解决办法]
到底是要保存当前窗体(Form)还是屏幕?

从你的code里看来,似乎是从剪贴板里弄得图片。

IDataObject ido = Clipboard.GetDataObject();

你没有判断ido是否为null

抛出的异常是NullReferenceException吗?
[解决办法]

C# code
private void DrawMeToBitmap(Control Obj)        {            int w = 0, h = 0;            foreach (Control var in Obj.Controls)            {                if (var.Right > w)                    w = var.Right;                if (var.Bottom > h)                    h = var.Bottom;            }            w++;            h++;            Bitmap bmp = new Bitmap(w, h);            Graphics g = Graphics.FromImage(bmp);            using (Brush backColorBrush = new SolidBrush(Obj.BackColor))            {                g.FillRectangle(backColorBrush, new Rectangle(0, te
[解决办法]
mark

热点排行