資源簡介
C#畫圖程序
支持撤銷重做功能
代碼全,學習撤銷重做思路非常有幫助

代碼片段和文件信息
using?System;
using?System.Collections.Generic;
using?System.ComponentModel;
using?System.Data;
using?System.Drawing;
using?System.Linq;
using?System.Text;
using?System.Windows.Forms;
namespace?畫圖
{
????public?partial?class?Form1?:?Form
????{
????????private?bool?f?=?false;
????????private?Graphics?g;
????????private?int?x1?y1?x2?y2;
????????private?Pen?peneraser;
????????private?SolidBrush?sBrush;
????????private?Bitmap?bt?sbt;
????????private?int?type?=?0;
????????private?bool?fill?=?false;
????????private?Color?pencolor?=?Color.Black;
????????private?Color?bgcolor?=?Color.White;
????????private?int?penwidth?=?1;
????????private?Cursor?curearsercurpen;
????????private?Stack?history?now;
????????public?Form1()
????????{
????????????InitializeComponent();
????????}
????????private?void?Form1_Load(object?sender?EventArgs?e)
????????{
????????????Graphics?g1?=?pictureBox1.CreateGraphics();
????????????pen?=?new?Pen(pencolorpenwidth);
????????????eraser?=?new?Pen(bgcolor?30);
????????????sBrush?=?new?SolidBrush(pencolor);
????????????bt?=?new?Bitmap(pictureBox1.Width?pictureBox1.Height?g1);
????????????g?=?Graphics.FromImage(bt);
????????????curearser?=?new?Cursor(“./eraser.cur“);
????????????curpen?=?new?Cursor(“./pen.cur“);
????????????pictureBox1.Cursor?=?curpen;
????????????history?=?new?Stack();
????????????now?=?new?Stack();
????????}
????????private?void?exitToolStripMenuItem_Click(object?sender?EventArgs?e)
????????{
????????????if?(DialogResult.Yes?==?MessageBox.Show(“Exit?““Exit?confirm“MessageBoxButtons.YesNoMessageBoxIcon.QuestionMessageBoxDefaultButton.Button1))
????????????{
????????????????this.Close();
????????????}
????????}
????????public?void?openToolStripMenuItem_Click(object?sender?EventArgs?e)
????????{
????????????OpenFileDialog?openPic?=?new?OpenFileDialog();
????????????openPic.InitialDirectory?=?“C:\\“;
????????????openPic.Filter?=?“Image?Files(*.jpg*.png*.gif*.bmp)|*.jpg;*.png;*.gif;*.bmp|All?Files(*.*)|*.*“;
????????????openPic.FilterIndex?=?2;
????????????openPic.RestoreDirectory?=?true;
????????????if?(openPic.ShowDialog()?==?DialogResult.OK)
????????????{
????????????????bt?=?new?Bitmap(openPic.FileName);
????????????????pictureBox1.Image?=?bt;
????????????????g?=?Graphics.FromImage(bt);
????????????}
????????}
????????private?void?toolStripButton4_Click(object?sender?EventArgs?e)
????????{
????????????this.openToolStripMenuItem_Click(sender?e);
????????}
????????private?void?sToolStripMenuItem_Click(object?sender?EventArgs?e)
????????{
????????????SaveFileDialog?svImg?=?new?SaveFileDialog();
????????????svImg.InitialDirectory?=?“C:\\“;
????????????svImg.Filter?=?“BMP文件(*.bmp)|*.bmp“;
????????????svImg.FilterIndex=2;
????????????svImg.RestoreDirectory=true;
????????????if?(svImg.ShowDialog()?==?DialogResult.OK)
????????????{
????????????????pictureBox1.Image.Save(svImg.FileName);
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????326??2009-11-17?16:49??畫圖\exe\eraser.cur
?????文件????????326??2009-11-17?17:00??畫圖\exe\pen.cur
?????文件?????406528??2009-11-19?20:14??畫圖\exe\畫圖.exe
?????文件????????326??2009-11-17?16:49??畫圖\畫圖\bin\Debug\eraser.cur
?????文件????????326??2009-11-17?17:00??畫圖\畫圖\bin\Debug\pen.cur
?????文件?????406528??2009-11-19?20:14??畫圖\畫圖\bin\Debug\畫圖.exe
?????文件??????32256??2009-11-19?20:14??畫圖\畫圖\bin\Debug\畫圖.pdb
?????文件??????14328??2009-11-19?20:14??畫圖\畫圖\bin\Debug\畫圖.vshost.exe
?????文件????????490??2009-06-11?05:14??畫圖\畫圖\bin\Debug\畫圖.vshost.exe.manifest
?????文件????????326??2009-11-17?16:49??畫圖\畫圖\eraser.cur
?????文件???????9735??2009-11-19?20:13??畫圖\畫圖\Form1.cs
?????文件??????23796??2009-11-18?17:59??畫圖\畫圖\Form1.Designer.cs
?????文件?????581856??2009-11-18?17:59??畫圖\畫圖\Form1.resx
?????文件????????525??2009-11-19?20:14??畫圖\畫圖\obj\Debug\畫圖.csproj.FileListAbsolute.txt
?????文件????????847??2009-11-19?20:14??畫圖\畫圖\obj\Debug\畫圖.csproj.GenerateResource.Cache
?????文件?????406528??2009-11-19?20:14??畫圖\畫圖\obj\Debug\畫圖.exe
?????文件?????385341??2009-11-19?20:14??畫圖\畫圖\obj\Debug\畫圖.Form1.resources
?????文件??????32256??2009-11-19?20:14??畫圖\畫圖\obj\Debug\畫圖.pdb
?????文件????????180??2009-11-19?20:14??畫圖\畫圖\obj\Debug\畫圖.Properties.Resources.resources
?????文件????????326??2009-11-17?17:00??畫圖\畫圖\pen.cur
?????文件????????487??2009-10-27?21:38??畫圖\畫圖\Program.cs
?????文件???????1344??2009-10-27?21:38??畫圖\畫圖\Properties\AssemblyInfo.cs
?????文件???????2862??2009-10-27?21:38??畫圖\畫圖\Properties\Resources.Designer.cs
?????文件???????5612??2009-10-27?21:38??畫圖\畫圖\Properties\Resources.resx
?????文件???????1091??2009-10-27?21:38??畫圖\畫圖\Properties\Settings.Designer.cs
?????文件????????249??2009-10-27?21:38??畫圖\畫圖\Properties\Settings.settings
?????文件???????3862??2009-11-17?17:02??畫圖\畫圖\畫圖.csproj
?????文件????????908??2009-10-27?21:38??畫圖\畫圖.sln
????..A..H.?????16384??2009-11-19?20:14??畫圖\畫圖.suo
?????目錄??????????0??2009-11-18?17:59??畫圖\畫圖\obj\Debug\Refactor
............此處省略12個文件信息
評論
共有 條評論