问题描述
publicpartialclassForm1:Form{publicForm1(){InitializeComponent();}//实现画图功能privateGraphicsg=null;privatePointoldpoint=newPoint(0,0);Pointptstart,ptend;privatevoidpictureBox3_MouseDown(objectsender,MouseEventArgse){g=pictureBox3.CreateGraphics();oldpoint=e.Location;ptstart=e.Location;this.pictureBox3.MouseMove+=newSystem.Windows.Forms.MouseEventHandler(this.pictureBox3_MouseMove);}privatevoidpictureBox3_MouseMove(objectsender,MouseEventArgse){if(g!=null){//异常处理try{g.DrawLine(Pens.Black,oldpoint,e.Location);oldpoint=e.Location;ptend=e.Location;}catch(Exceptionex){}//异常处理}}privatevoidpictureBox3_MouseUp(objectsender,MouseEventArgse){g.Dispose();this.pictureBox3.MouseMove-=newSystem.Windows.Forms.MouseEventHandler(this.pictureBox3_MouseMove);/*if((ptstart.X-ptend.X)*(ptstart.X-ptend.X)+(ptstart.Y-ptend.Y)*(ptstart.Y-ptend.Y)<=100){}*///保存图片Bitmapbmp=newBitmap(pictureBox3.Width,pictureBox3.Height);pictureBox3.DrawToBitmap(bmp,newRectangle(0,0,bmp.Width,bmp.Height));bmp.Save("F:\1.bmp");//保存图片}
解决方案
解决方案二:
这代码问题太多了。基本的画图逻辑没有,事件的用法也不对。
解决方案三:
你的picturebox不是已经能够显示图像了,直接将picturebox图像保存到一个临时的image对象,然后存储Bitmapimg=(Bitmap)pictureBox1.Image;img.Save("1.bmp");