C#程序中保存picturebox中图片然后弹出对话框“保存成功“的问题”
我先这么定义的:Bitmapb;Graphicsg;然后在Form1的paint方法里这么写:g=Graphics.FromImage(b);b=newBitmap(pi...
我先这么定义的:
Bitmap b;
Graphics g;
然后在Form1的paint方法里这么写:
g = Graphics.FromImage(b);
b = new Bitmap(pictureBox1.Width, pictureBox1.Height);
pictureBox1.Image = b;
g.Clear(Color.White);
g.SmoothingMode = SmoothingMode.AntiAlias;
然后就开始画,画完之后再按钮里添加代码:
this.pictureBox1.Image.Save(@"D:\MohrCircle.png");
MessageBox.Show(this, "保存成功!");
另外,在picturebox的paint方法里就写了一行,就是调用Form1的paint方法。
现在的问题是,一点保存,图片保存成功了,但程序就死掉了。我想是因为一直new bitmap的问题。
求指点,能在百度hi上指导下的,我再加分吧!!!
谢谢~~~
问题描述错了,悲剧。
Form1_paint方法里什么都没写,有个pictureBox1_Paint方法,里面就一行,paint(type);,这个paint是自己写的方法,这个paint里就b = new Bitmap(pictureBox1.Width, pictureBox1.Height);g = Graphics.FromImage(b); pictureBox1.Image = b;开始画了。。 展开
Bitmap b;
Graphics g;
然后在Form1的paint方法里这么写:
g = Graphics.FromImage(b);
b = new Bitmap(pictureBox1.Width, pictureBox1.Height);
pictureBox1.Image = b;
g.Clear(Color.White);
g.SmoothingMode = SmoothingMode.AntiAlias;
然后就开始画,画完之后再按钮里添加代码:
this.pictureBox1.Image.Save(@"D:\MohrCircle.png");
MessageBox.Show(this, "保存成功!");
另外,在picturebox的paint方法里就写了一行,就是调用Form1的paint方法。
现在的问题是,一点保存,图片保存成功了,但程序就死掉了。我想是因为一直new bitmap的问题。
求指点,能在百度hi上指导下的,我再加分吧!!!
谢谢~~~
问题描述错了,悲剧。
Form1_paint方法里什么都没写,有个pictureBox1_Paint方法,里面就一行,paint(type);,这个paint是自己写的方法,这个paint里就b = new Bitmap(pictureBox1.Width, pictureBox1.Height);g = Graphics.FromImage(b); pictureBox1.Image = b;开始画了。。 展开
展开全部
把 “在picturebox的paint方法里就写了一行,就是调用Form1的paint方法”
中 调用 Form1的paint 方法 去掉。 Form1的paint 方法会阻止进程的。
中 调用 Form1的paint 方法 去掉。 Form1的paint 方法会阻止进程的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
MessageBox.Show(this, "保存成功!");
的问题
这样会造成界面重绘 懂???
应该是这样的
b = new Bitmap(pictureBox1.Width, pictureBox1.Height);
g = Graphics.FromImage(b);
pictureBox1.Image = b;
g.Clear(Color.White);
g.SmoothingMode = SmoothingMode.AntiAlias;
this.pictureBox1.Image.Save(@"D:\MohrCircle.png");
弹出框就别要了
你HI我吧
的问题
这样会造成界面重绘 懂???
应该是这样的
b = new Bitmap(pictureBox1.Width, pictureBox1.Height);
g = Graphics.FromImage(b);
pictureBox1.Image = b;
g.Clear(Color.White);
g.SmoothingMode = SmoothingMode.AntiAlias;
this.pictureBox1.Image.Save(@"D:\MohrCircle.png");
弹出框就别要了
你HI我吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
大哥你这样是死循环。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询