绘图软件.docx
《绘图软件.docx》由会员分享,可在线阅读,更多相关《绘图软件.docx(11页珍藏版)》请在冰豆网上搜索。
绘图软件
2流程图…………………………………………………1
3程序代码…………………………………………………2
4结果调试…………………………………………………7
1设计目的与要求
通过对windows绘图程序设计的学习及了解,设计一个绘图软件,实现颜色、图形、画笔等的多样变化,使其有更完善的画图功能。
在设计过程中,不单单要注意绘图功能的实现,还要实现画板窗体的设计,使其更美观方便。
2流程图
3程序代码
3.1绘图功能的设计与实现
usingSystem;
usingSystem.Collections.Generic;
usingSystem.ComponentModel;
usingSystem.Data;
usingSystem.Drawing;
usingSystem.Linq;
usingSystem.Text;
usingSystem.Windows.Forms;
namespaceDraw
{
publicpartialclassDrawForm:
Form
privateintdrawMode=2;
Graphicsg=null;
privatePointstart,end;
ColorpenColor=Color.Black;
intpenWidth=1;
Bitmapbit,map;
publicDrawForm()
InitializeComponent();
}
privatevoidPaint(Pointpoint)
Penpen=newPen(penColor,penWidth);
intx1=start.X;intx2=end.X;inty1=start.Y;inty2=end.Y;
switch(drawMode)
case2:
g=Graphics.FromImage(bit);
end=point;
g.DrawLine(pen,start,end);
pictureBox.Image=bit;
start=end;
break;
case3:
map=(Bitmap)bit.Clone();//画直线
g=Graphics.FromImage(map);
pictureBox.Image=map;
case4:
map=(Bitmap)bit.Clone();//矩形
if(start.X{g.DrawRectangle(pen,start.X,start.Y,end.X-start.X,end.Y-start.Y);}if(start.X>end.X&&start.Y{g.DrawRectangle(pen,end.X,start.Y,start.X-end.X,end.Y-start.Y);}if(end.X{g.DrawRectangle(pen,end.X,end.Y,start.X-end.X,start.Y-end.Y);}if(end.X>start.X&&end.Y{g.DrawRectangle(pen,start.X,end.Y,end.X-start.X,start.Y-end.Y);}end=point;pictureBox.Image=map;break;case5:map=(Bitmap)bit.Clone();g=Graphics.FromImage(bit);g.FillRectangle(newSolidBrush(Color.White),point.X,point.Y,10,10);pictureBox.Image=map;break;case6:map=(Bitmap)bit.Clone();//矩形g=Graphics.FromImage(map);start.X=x1>x2?x2:x1;end.X=x1>x2?x1:x2;start.Y=y1>y2?y2:y1;end.Y=y1>y2?y1:y2;g.DrawEllipse(pen,start.X,start.Y,end.X-start.X,end.Y-start.Y);end=point;pictureBox.Image=map;break;}}privatevoidDrawForm_Load(objectsender,EventArgse){bit=newBitmap(pictureBox.Width,pictureBox.Height);}privatevoidpictureBox_MouseDown(objectsender,MouseEventArgse){if(e.Button==MouseButtons.Left){start=newPoint(e.X,e.Y);end=start;}}privatevoidpictureBox_MouseUp(objectsender,MouseEventArgse){if(e.Button==MouseButtons.Left){if(map!=null)bit=map;}}privatevoid画线ToolStripMenuItem_Click(objectsender,EventArgse){drawMode=2;}privatevoidtoolStripMenuItem1_Click_1(objectsender,EventArgse){drawMode=3;}privatevoid画矩形_Click(objectsender,EventArgse){drawMode=4;}privatevoid橡皮擦_Click(objectsender,EventArgse){drawMode=5;}privatevoid画圆ToolStripMenuItem_Click(objectsender,EventArgse){drawMode=6;}privatevoidtoolStripMenuItem2_Click(objectsender,EventArgse){penWidth=1;}privatevoidtoolStripMenuItem3_Click(objectsender,EventArgse){penWidth=4;}privatevoidtoolStripMenuItem4_Click(objectsender,EventArgse){penWidth=8;}privatevoidtoolStripMenuItem5_Click(objectsender,EventArgse){penWidth=12;}privatevoid打开ToolStripMenuItem_Click(objectsender,EventArgse){open.ShowDialog();}privatevoidopen_FileOk(objectsender,CancelEventArgse){bit=newBitmap(open.OpenFile());pictureBox.Image=bit;}privatevoidpictureBox_MouseMove(objectsender,MouseEventArgse){stateLabel.Text="像素"+e.X.ToString()+","+e.Y.ToString();if(e.Button==MouseButtons.Left){Paint(newPoint(e.X,e.Y));}}privatevoid颜色ToolStripMenuItem_Click(objectsender,EventArgse){ColorDialogC=newColorDialog();if(C.ShowDialog()==DialogResult.OK){penColor=C.Color;}}privatevoid保存ToolStripMenuItem_Click(objectsender,EventArgse){if(save.ShowDialog()==DialogResult.OK){pictureBox.Image.Save(save.FileName);}}}}3.2窗体设计实现namespaceDraw{partialclassDrawForm{//////必需的设计器变量///privateSystem.ComponentModel.IContainercomponents=null;//////清理所有正在使用的资源//////如果应释放托管资源为true;否则为false。protectedoverridevoidDispose(booldisposing){if(disposing&&(components!=null)){components.Dispose();}base.Dispose(disposing);}Windows窗体设计器生成的代码privateSystem.Windows.Forms.StatusStripstatusStrip1;privateSystem.Windows.Forms.ToolStripStatusLabelstateLabel;privateSystem.Windows.Forms.MenuStripmenuStrip1;privateSystem.Windows.Forms.ToolStripMenuItem文?件tToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItem打䨰开aToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItem保À¡ê存ä?ToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItem画-笔À¨ºToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItem颜?色¦?ToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItem字Á?体¬?ToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItemtoolStripMenuItem2;privateSystem.Windows.Forms.ToolStripMenuItemtoolStripMenuItem3;privateSystem.Windows.Forms.ToolStripMenuItemtoolStripMenuItem4;privateSystem.Windows.Forms.ToolStripMenuItemtoolStripMenuItem5;privateSystem.Windows.Forms.OpenFileDialogopen;privateSystem.Windows.Forms.PictureBoxpictureBox;privateSystem.Windows.Forms.ToolStripMenuItem类¤¨¤型¨ªToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItem画-线?ToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItem画-直¡À线?ToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItem画-矩?形?ToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItem画-圆2ToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItem橡e皮¡è擦¨¢ToolStripMenuItem;privateSystem.Windows.Forms.SaveFileDialogsave;}}4调试结果4.1颜色变化4.2粗细变化4.3橡皮擦4.4图形变化
{g.DrawRectangle(pen,start.X,start.Y,end.X-start.X,end.Y-start.Y);}
if(start.X>end.X&&start.Y{g.DrawRectangle(pen,end.X,start.Y,start.X-end.X,end.Y-start.Y);}if(end.X{g.DrawRectangle(pen,end.X,end.Y,start.X-end.X,start.Y-end.Y);}if(end.X>start.X&&end.Y{g.DrawRectangle(pen,start.X,end.Y,end.X-start.X,start.Y-end.Y);}end=point;pictureBox.Image=map;break;case5:map=(Bitmap)bit.Clone();g=Graphics.FromImage(bit);g.FillRectangle(newSolidBrush(Color.White),point.X,point.Y,10,10);pictureBox.Image=map;break;case6:map=(Bitmap)bit.Clone();//矩形g=Graphics.FromImage(map);start.X=x1>x2?x2:x1;end.X=x1>x2?x1:x2;start.Y=y1>y2?y2:y1;end.Y=y1>y2?y1:y2;g.DrawEllipse(pen,start.X,start.Y,end.X-start.X,end.Y-start.Y);end=point;pictureBox.Image=map;break;}}privatevoidDrawForm_Load(objectsender,EventArgse){bit=newBitmap(pictureBox.Width,pictureBox.Height);}privatevoidpictureBox_MouseDown(objectsender,MouseEventArgse){if(e.Button==MouseButtons.Left){start=newPoint(e.X,e.Y);end=start;}}privatevoidpictureBox_MouseUp(objectsender,MouseEventArgse){if(e.Button==MouseButtons.Left){if(map!=null)bit=map;}}privatevoid画线ToolStripMenuItem_Click(objectsender,EventArgse){drawMode=2;}privatevoidtoolStripMenuItem1_Click_1(objectsender,EventArgse){drawMode=3;}privatevoid画矩形_Click(objectsender,EventArgse){drawMode=4;}privatevoid橡皮擦_Click(objectsender,EventArgse){drawMode=5;}privatevoid画圆ToolStripMenuItem_Click(objectsender,EventArgse){drawMode=6;}privatevoidtoolStripMenuItem2_Click(objectsender,EventArgse){penWidth=1;}privatevoidtoolStripMenuItem3_Click(objectsender,EventArgse){penWidth=4;}privatevoidtoolStripMenuItem4_Click(objectsender,EventArgse){penWidth=8;}privatevoidtoolStripMenuItem5_Click(objectsender,EventArgse){penWidth=12;}privatevoid打开ToolStripMenuItem_Click(objectsender,EventArgse){open.ShowDialog();}privatevoidopen_FileOk(objectsender,CancelEventArgse){bit=newBitmap(open.OpenFile());pictureBox.Image=bit;}privatevoidpictureBox_MouseMove(objectsender,MouseEventArgse){stateLabel.Text="像素"+e.X.ToString()+","+e.Y.ToString();if(e.Button==MouseButtons.Left){Paint(newPoint(e.X,e.Y));}}privatevoid颜色ToolStripMenuItem_Click(objectsender,EventArgse){ColorDialogC=newColorDialog();if(C.ShowDialog()==DialogResult.OK){penColor=C.Color;}}privatevoid保存ToolStripMenuItem_Click(objectsender,EventArgse){if(save.ShowDialog()==DialogResult.OK){pictureBox.Image.Save(save.FileName);}}}}3.2窗体设计实现namespaceDraw{partialclassDrawForm{//////必需的设计器变量///privateSystem.ComponentModel.IContainercomponents=null;//////清理所有正在使用的资源//////如果应释放托管资源为true;否则为false。protectedoverridevoidDispose(booldisposing){if(disposing&&(components!=null)){components.Dispose();}base.Dispose(disposing);}Windows窗体设计器生成的代码privateSystem.Windows.Forms.StatusStripstatusStrip1;privateSystem.Windows.Forms.ToolStripStatusLabelstateLabel;privateSystem.Windows.Forms.MenuStripmenuStrip1;privateSystem.Windows.Forms.ToolStripMenuItem文?件tToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItem打䨰开aToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItem保À¡ê存ä?ToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItem画-笔À¨ºToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItem颜?色¦?ToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItem字Á?体¬?ToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItemtoolStripMenuItem2;privateSystem.Windows.Forms.ToolStripMenuItemtoolStripMenuItem3;privateSystem.Windows.Forms.ToolStripMenuItemtoolStripMenuItem4;privateSystem.Windows.Forms.ToolStripMenuItemtoolStripMenuItem5;privateSystem.Windows.Forms.OpenFileDialogopen;privateSystem.Windows.Forms.PictureBoxpictureBox;privateSystem.Windows.Forms.ToolStripMenuItem类¤¨¤型¨ªToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItem画-线?ToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItem画-直¡À线?ToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItem画-矩?形?ToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItem画-圆2ToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItem橡e皮¡è擦¨¢ToolStripMenuItem;privateSystem.Windows.Forms.SaveFileDialogsave;}}4调试结果4.1颜色变化4.2粗细变化4.3橡皮擦4.4图形变化
{g.DrawRectangle(pen,end.X,start.Y,start.X-end.X,end.Y-start.Y);}
if(end.X{g.DrawRectangle(pen,end.X,end.Y,start.X-end.X,start.Y-end.Y);}if(end.X>start.X&&end.Y{g.DrawRectangle(pen,start.X,end.Y,end.X-start.X,start.Y-end.Y);}end=point;pictureBox.Image=map;break;case5:map=(Bitmap)bit.Clone();g=Graphics.FromImage(bit);g.FillRectangle(newSolidBrush(Color.White),point.X,point.Y,10,10);pictureBox.Image=map;break;case6:map=(Bitmap)bit.Clone();//矩形g=Graphics.FromImage(map);start.X=x1>x2?x2:x1;end.X=x1>x2?x1:x2;start.Y=y1>y2?y2:y1;end.Y=y1>y2?y1:y2;g.DrawEllipse(pen,start.X,start.Y,end.X-start.X,end.Y-start.Y);end=point;pictureBox.Image=map;break;}}privatevoidDrawForm_Load(objectsender,EventArgse){bit=newBitmap(pictureBox.Width,pictureBox.Height);}privatevoidpictureBox_MouseDown(objectsender,MouseEventArgse){if(e.Button==MouseButtons.Left){start=newPoint(e.X,e.Y);end=start;}}privatevoidpictureBox_MouseUp(objectsender,MouseEventArgse){if(e.Button==MouseButtons.Left){if(map!=null)bit=map;}}privatevoid画线ToolStripMenuItem_Click(objectsender,EventArgse){drawMode=2;}privatevoidtoolStripMenuItem1_Click_1(objectsender,EventArgse){drawMode=3;}privatevoid画矩形_Click(objectsender,EventArgse){drawMode=4;}privatevoid橡皮擦_Click(objectsender,EventArgse){drawMode=5;}privatevoid画圆ToolStripMenuItem_Click(objectsender,EventArgse){drawMode=6;}privatevoidtoolStripMenuItem2_Click(objectsender,EventArgse){penWidth=1;}privatevoidtoolStripMenuItem3_Click(objectsender,EventArgse){penWidth=4;}privatevoidtoolStripMenuItem4_Click(objectsender,EventArgse){penWidth=8;}privatevoidtoolStripMenuItem5_Click(objectsender,EventArgse){penWidth=12;}privatevoid打开ToolStripMenuItem_Click(objectsender,EventArgse){open.ShowDialog();}privatevoidopen_FileOk(objectsender,CancelEventArgse){bit=newBitmap(open.OpenFile());pictureBox.Image=bit;}privatevoidpictureBox_MouseMove(objectsender,MouseEventArgse){stateLabel.Text="像素"+e.X.ToString()+","+e.Y.ToString();if(e.Button==MouseButtons.Left){Paint(newPoint(e.X,e.Y));}}privatevoid颜色ToolStripMenuItem_Click(objectsender,EventArgse){ColorDialogC=newColorDialog();if(C.ShowDialog()==DialogResult.OK){penColor=C.Color;}}privatevoid保存ToolStripMenuItem_Click(objectsender,EventArgse){if(save.ShowDialog()==DialogResult.OK){pictureBox.Image.Save(save.FileName);}}}}3.2窗体设计实现namespaceDraw{partialclassDrawForm{//////必需的设计器变量///privateSystem.ComponentModel.IContainercomponents=null;//////清理所有正在使用的资源//////如果应释放托管资源为true;否则为false。protectedoverridevoidDispose(booldisposing){if(disposing&&(components!=null)){components.Dispose();}base.Dispose(disposing);}Windows窗体设计器生成的代码privateSystem.Windows.Forms.StatusStripstatusStrip1;privateSystem.Windows.Forms.ToolStripStatusLabelstateLabel;privateSystem.Windows.Forms.MenuStripmenuStrip1;privateSystem.Windows.Forms.ToolStripMenuItem文?件tToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItem打䨰开aToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItem保À¡ê存ä?ToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItem画-笔À¨ºToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItem颜?色¦?ToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItem字Á?体¬?ToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItemtoolStripMenuItem2;privateSystem.Windows.Forms.ToolStripMenuItemtoolStripMenuItem3;privateSystem.Windows.Forms.ToolStripMenuItemtoolStripMenuItem4;privateSystem.Windows.Forms.ToolStripMenuItemtoolStripMenuItem5;privateSystem.Windows.Forms.OpenFileDialogopen;privateSystem.Windows.Forms.PictureBoxpictureBox;privateSystem.Windows.Forms.ToolStripMenuItem类¤¨¤型¨ªToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItem画-线?ToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItem画-直¡À线?ToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItem画-矩?形?ToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItem画-圆2ToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItem橡e皮¡è擦¨¢ToolStripMenuItem;privateSystem.Windows.Forms.SaveFileDialogsave;}}4调试结果4.1颜色变化4.2粗细变化4.3橡皮擦4.4图形变化
{g.DrawRectangle(pen,end.X,end.Y,start.X-end.X,start.Y-end.Y);}
if(end.X>start.X&&end.Y{g.DrawRectangle(pen,start.X,end.Y,end.X-start.X,start.Y-end.Y);}end=point;pictureBox.Image=map;break;case5:map=(Bitmap)bit.Clone();g=Graphics.FromImage(bit);g.FillRectangle(newSolidBrush(Color.White),point.X,point.Y,10,10);pictureBox.Image=map;break;case6:map=(Bitmap)bit.Clone();//矩形g=Graphics.FromImage(map);start.X=x1>x2?x2:x1;end.X=x1>x2?x1:x2;start.Y=y1>y2?y2:y1;end.Y=y1>y2?y1:y2;g.DrawEllipse(pen,start.X,start.Y,end.X-start.X,end.Y-start.Y);end=point;pictureBox.Image=map;break;}}privatevoidDrawForm_Load(objectsender,EventArgse){bit=newBitmap(pictureBox.Width,pictureBox.Height);}privatevoidpictureBox_MouseDown(objectsender,MouseEventArgse){if(e.Button==MouseButtons.Left){start=newPoint(e.X,e.Y);end=start;}}privatevoidpictureBox_MouseUp(objectsender,MouseEventArgse){if(e.Button==MouseButtons.Left){if(map!=null)bit=map;}}privatevoid画线ToolStripMenuItem_Click(objectsender,EventArgse){drawMode=2;}privatevoidtoolStripMenuItem1_Click_1(objectsender,EventArgse){drawMode=3;}privatevoid画矩形_Click(objectsender,EventArgse){drawMode=4;}privatevoid橡皮擦_Click(objectsender,EventArgse){drawMode=5;}privatevoid画圆ToolStripMenuItem_Click(objectsender,EventArgse){drawMode=6;}privatevoidtoolStripMenuItem2_Click(objectsender,EventArgse){penWidth=1;}privatevoidtoolStripMenuItem3_Click(objectsender,EventArgse){penWidth=4;}privatevoidtoolStripMenuItem4_Click(objectsender,EventArgse){penWidth=8;}privatevoidtoolStripMenuItem5_Click(objectsender,EventArgse){penWidth=12;}privatevoid打开ToolStripMenuItem_Click(objectsender,EventArgse){open.ShowDialog();}privatevoidopen_FileOk(objectsender,CancelEventArgse){bit=newBitmap(open.OpenFile());pictureBox.Image=bit;}privatevoidpictureBox_MouseMove(objectsender,MouseEventArgse){stateLabel.Text="像素"+e.X.ToString()+","+e.Y.ToString();if(e.Button==MouseButtons.Left){Paint(newPoint(e.X,e.Y));}}privatevoid颜色ToolStripMenuItem_Click(objectsender,EventArgse){ColorDialogC=newColorDialog();if(C.ShowDialog()==DialogResult.OK){penColor=C.Color;}}privatevoid保存ToolStripMenuItem_Click(objectsender,EventArgse){if(save.ShowDialog()==DialogResult.OK){pictureBox.Image.Save(save.FileName);}}}}3.2窗体设计实现namespaceDraw{partialclassDrawForm{//////必需的设计器变量///privateSystem.ComponentModel.IContainercomponents=null;//////清理所有正在使用的资源//////如果应释放托管资源为true;否则为false。protectedoverridevoidDispose(booldisposing){if(disposing&&(components!=null)){components.Dispose();}base.Dispose(disposing);}Windows窗体设计器生成的代码privateSystem.Windows.Forms.StatusStripstatusStrip1;privateSystem.Windows.Forms.ToolStripStatusLabelstateLabel;privateSystem.Windows.Forms.MenuStripmenuStrip1;privateSystem.Windows.Forms.ToolStripMenuItem文?件tToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItem打䨰开aToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItem保À¡ê存ä?ToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItem画-笔À¨ºToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItem颜?色¦?ToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItem字Á?体¬?ToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItemtoolStripMenuItem2;privateSystem.Windows.Forms.ToolStripMenuItemtoolStripMenuItem3;privateSystem.Windows.Forms.ToolStripMenuItemtoolStripMenuItem4;privateSystem.Windows.Forms.ToolStripMenuItemtoolStripMenuItem5;privateSystem.Windows.Forms.OpenFileDialogopen;privateSystem.Windows.Forms.PictureBoxpictureBox;privateSystem.Windows.Forms.ToolStripMenuItem类¤¨¤型¨ªToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItem画-线?ToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItem画-直¡À线?ToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItem画-矩?形?ToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItem画-圆2ToolStripMenuItem;privateSystem.Windows.Forms.ToolStripMenuItem橡e皮¡è擦¨¢ToolStripMenuItem;privateSystem.Windows.Forms.SaveFileDialogsave;}}4调试结果4.1颜色变化4.2粗细变化4.3橡皮擦4.4图形变化
{g.DrawRectangle(pen,start.X,end.Y,end.X-start.X,start.Y-end.Y);}
case5:
map=(Bitmap)bit.Clone();
g.FillRectangle(newSolidBrush(Color.White),point.X,point.Y,10,10);
case6:
start.X=x1>x2?
x2:
x1;end.X=x1>x2?
x1:
x2;
start.Y=y1>y2?
y2:
y1;end.Y=y1>y2?
y1:
y2;
g.DrawEllipse(pen,start.X,start.Y,end.X-start.X,end.Y-start.Y);
privatevoidDrawForm_Load(objectsender,EventArgse)
bit=newBitmap(pictureBox.Width,pictureBox.Height);
privatevoidpictureBox_MouseDown(objectsender,MouseEventArgse)
if(e.Button==MouseButtons.Left)
start=newPoint(e.X,e.Y);
end=start;
privatevoidpictureBox_MouseUp(objectsender,MouseEventArgse)
if(map!
=null)bit=map;
privatevoid画线ToolStripMenuItem_Click(objectsender,EventArgse)
drawMode=2;
privatevoidtoolStripMenuItem1_Click_1(objectsender,EventArgse)
drawMode=3;
privatevoid画矩形_Click(objectsender,EventArgse)
drawMode=4;
privatevoid橡皮擦_Click(objectsender,EventArgse)
drawMode=5;
privatevoid画圆ToolStripMenuItem_Click(objectsender,EventArgse)
drawMode=6;
privatevoidtoolStripMenuItem2_Click(objectsender,EventArgse)
penWidth=1;
privatevoidtoolStripMenuItem3_Click(objectsender,EventArgse)
penWidth=4;
privatevoidtoolStripMenuItem4_Click(objectsender,EventArgse)
penWidth=8;
privatevoidtoolStripMenuItem5_Click(objectsender,EventArgse)
penWidth=12;
privatevoid打开ToolStripMenuItem_Click(objectsender,EventArgse)
open.ShowDialog();
privatevoidopen_FileOk(objectsender,CancelEventArgse)
bit=newBitmap(open.OpenFile());
privatevoidpictureBox_MouseMove(objectsender,MouseEventArgse)
stateLabel.Text="像素"+e.X.ToString()+","+e.Y.ToString();
Paint(newPoint(e.X,e.Y));
privatevoid颜色ToolStripMenuItem_Click(objectsender,EventArgse)
ColorDialogC=newColorDialog();
if(C.ShowDialog()==DialogResult.OK)
penColor=C.Color;
privatevoid保存ToolStripMenuItem_Click(objectsender,EventArgse)
if(save.ShowDialog()==DialogResult.OK)
pictureBox.Image.Save(save.FileName);
3.2窗体设计实现
partialclassDrawForm
///
///必需的设计器变量
privateSystem.ComponentModel.IContainercomponents=null;
///清理所有正在使用的资源
///如果应释放托管资源为true;否则为false。
protectedoverridevoidDispose(booldisposing)
if(disposing&&(components!
=null))
components.Dispose();
base.Dispose(disposing);
Windows窗体设计器生成的代码
privateSystem.Windows.Forms.StatusStripstatusStrip1;
privateSystem.Windows.Forms.ToolStripStatusLabelstateLabel;
privateSystem.Windows.Forms.MenuStripmenuStrip1;
privateSystem.Windows.Forms.ToolStripMenuItem文?
件tToolStripMenuItem;
privateSystem.Windows.Forms.ToolStripMenuItem打䨰开aToolStripMenuItem;
privateSystem.Windows.Forms.ToolStripMenuItem保À¡ê存ä?
ToolStripMenuItem;
privateSystem.Windows.Forms.ToolStripMenuItem画-笔À¨ºToolStripMenuItem;
privateSystem.Windows.Forms.ToolStripMenuItem颜?
色¦?
privateSystem.Windows.Forms.ToolStripMenuItem字Á?
体¬?
privateSystem.Windows.Forms.ToolStripMenuItemtoolStripMenuItem2;
privateSystem.Windows.Forms.ToolStripMenuItemtoolStripMenuItem3;
privateSystem.Windows.Forms.ToolStripMenuItemtoolStripMenuItem4;
privateSystem.Windows.Forms.ToolStripMenuItemtoolStripMenuItem5;
privateSystem.Windows.Forms.OpenFileDialogopen;
privateSystem.Windows.Forms.PictureBoxpictureBox;
privateSystem.Windows.Forms.ToolStripMenuItem类¤¨¤型¨ªToolStripMenuItem;
privateSystem.Windows.Forms.ToolStripMenuItem画-线?
privateSystem.Windows.Forms.ToolStripMenuItem画-直¡À线?
privateSystem.Windows.Forms.ToolStripMenuItem画-矩?
形?
privateSystem.Windows.Forms.ToolStripMenuItem画-圆2ToolStripMenuItem;
privateSystem.Windows.Forms.ToolStripMenuItem橡e皮¡è擦¨¢ToolStripMenuItem;
privateSystem.Windows.Forms.SaveFileDialogsave;
4调试结果
4.1颜色变化
4.2粗细变化
4.3橡皮擦
4.4图形变化
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1