using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.IO;
namespace 记事本 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } //编辑栏 private void 撤销ToolStripMenuItem_Click(object sender, EventArgs e) //撤销 { if (textBox1.CanUndo == true) //判断是否能够撤销 { textBox1.Undo(); //撤销最后一个操作。 textBox1.ClearUndo();//清除撤销缓冲区,以防止最后的动作被重做。 } } private void 剪切ToolStripMenuItem_Click(object sender, EventArgs e) //剪切 { textBox1.Cut(); //将选中的文本粘贴到剪贴板的控制。 } private void 复制ToolStripMenuItem_Click(object sender, EventArgs e) //复制 { textBox1.Copy(); //选中的文本复制到剪贴板。 } private void 粘贴ToolStripMenuItem_Click(object sender, EventArgs e) //粘贴 { textBox1.Paste(); //将当前文本剪贴板粘贴到文本框中。 } private void 删除ToolStripMenuItem_Click(object sender, EventArgs e) //删除 { textBox1.SelectedText = ""; //SelectedText 选中的文本 } private void 全选ToolStripMenuItem_Click(object sender, EventArgs e) //全选 { textBox1.SelectAll(); } //文件栏(对话框) private string Lujing; //定义一个变量来存放路径 private void 新建ToolStripMenuItem_Click(object sender, EventArgs e) //新建 { if (this.textBox1.Text.Length>0) //只有文本长度不为0才会执行下面的代码 { DialogResult drg = MessageBox.Show("是否进行保存","保存对话框",MessageBoxButtons.YesNo); if(drg==DialogResult.Yes) { if (Lujing == null) //如果之前没有路径,就相当于执行另存为 { saveFileDialog1.Filter = "文本文件|*.txt"; DialogResult lcw = saveFileDialog1.ShowDialog(); if (lcw == DialogResult.OK) { string file = saveFileDialog1.FileName; //创建流 StreamWriter path = new StreamWriter(file); path.Write(this.textBox1.Text);//将textBox1.text写入到路径里面 path.Close(); } } else { StreamWriter path = new StreamWriter(Lujing); path.Write(this.textBox1.Text); path.Close(); } } } Lujing = null;//执行完新建将路径变为空,因为是新建的文本是不会有路径的. this.textBox1.Text = ""; //将文本框清空 } private void 打开ToolStripMenuItem_Click(object sender, EventArgs e) //打开 { //再打开文本的时候,先对之前的文本执行是否保存 if (this.textBox1.Text.Length > 0) { DialogResult drg = MessageBox.Show("是否进行保存", "保存对话框", MessageBoxButtons.YesNo); if (drg == DialogResult.Yes) { if (Lujing == null) //如果之前没有路径,就相当于执行另存为 { saveFileDialog1.Filter = "文本文件|*.txt"; DialogResult lcw = saveFileDialog1.ShowDialog(); if (lcw == DialogResult.OK) { string file = saveFileDialog1.FileName; //创建流 StreamWriter path = new StreamWriter(file); path.Write(this.textBox1.Text);//将textBox1.text写入到路径里面 path.Close(); } } else { StreamWriter path = new StreamWriter(Lujing); path.Write(this.textBox1.Text); path.Close(); } } //保存完之后再打开新的 openFileDialog1.Filter = "文本文件.txt|*.txt|所有文件|*.*"; //筛选文件类型 DialogResult dk = openFileDialog1.ShowDialog(); //创建一个枚举类型的变量dk来接收打开这个对话框 if (dk == DialogResult.OK) //如果点的是确定,才会执行下面的代码 { string file = openFileDialog1.FileName;//定义一个变量来接收路径 //创建文件流 来将路径转换 StreamReader path = new StreamReader(file, Encoding.Default); //Encoding.Default 编码方式 textBox1.Text = path.ReadToEnd();//用ReadToEnd这个方法来将转换后的路径从头读到尾,从而显示在textbox1.text里面 path.Close();//用完流之后必须关闭 Lujing = file; //将路径存到Path里面 } } else { //如果没有文本,直接打开新的 openFileDialog1.Filter = "文本文件.txt|*.txt|所有文件|*.*"; //筛选文件类型 DialogResult dk = openFileDialog1.ShowDialog(); //创建一个枚举类型的变量dk来接收打开这个对话框 if (dk == DialogResult.OK) //如果点的是确定,才会执行下面的代码 { string file = openFileDialog1.FileName;//定义一个变量来接收路径 //创建文件流 来将路径转换 StreamReader path = new StreamReader(file, Encoding.Default); //Encoding.Default 编码方式 textBox1.Text = path.ReadToEnd();//用ReadToEnd这个方法来将转换后的路径从头读到尾,从而显示在textbox1.text里面 path.Close();//用完流之后必须关闭 Lujing = file; //将路径存到Path里面 } } } private void 保存ToolStripMenuItem_Click(object sender, EventArgs e) //保存 { if(Lujing==null) //如果之前没有路径,就相当于执行另存为 { saveFileDialog1.Filter = "文本文件|*.txt"; DialogResult lcw = saveFileDialog1.ShowDialog(); if (lcw == DialogResult.OK) { string file = saveFileDialog1.FileName; //创建流 StreamWriter path = new StreamWriter(file); path.Write(textBox1.Text);//将textBox1.text写入到路径里面 path.Close(); } } else //如果有路径,就存到之前的路径里面 { StreamWriter path = new StreamWriter(Lujing); path.Write(textBox1.Text); path.Close(); } } private void 另存为ToolStripMenuItem_Click(object sender, EventArgs e) //另存为 { saveFileDialog1.Filter = "文本文件|*.txt"; DialogResult lcw = saveFileDialog1.ShowDialog(); if(lcw==DialogResult.OK) { string file = saveFileDialog1.FileName; //创建流 StreamWriter path = new StreamWriter(file); path.Write(textBox1.Text);//将textBox1.text写入到路径里面 path.Close(); } } private void 页面设置ToolStripMenuItem_Click(object sender, EventArgs e) //页面设置 { pageSetupDialog1.Document = printDocument1;//为页面设置对话框指定打印对象 pageSetupDialog1.ShowDialog();//打开页面对话框 } private void 打印ToolStripMenuItem_Click(object sender, EventArgs e)//打印 { DialogResult dy = printDialog1.ShowDialog(); if(dy==DialogResult.OK) { printDocument1.Print(); //打印对象 } } private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e) //设置打印画板 { System.Drawing.Font f=new System.Drawing.Font("宋体",12); e.Graphics.DrawString(this.textBox1.Text,f,SystemBrushes.ActiveBorder,5,5); //e 代表每一页 } private void 退出ToolStripMenuItem_Click(object sender, EventArgs e) //退出 { this.Close(); } //格式 private void 自动换行ToolStripMenuItem_Click(object sender, EventArgs e)//自动换行 { textBox1.WordWrap = !textBox1.WordWrap;//点一下自动换行,再点一下不自动换行 WordWrap 是否允许自动换行 自动换行ToolStripMenuItem.Checked = textBox1.WordWrap; //后面的小对号 } private void 字体FToolStripMenuItem_Click(object sender, EventArgs e) //字体未完成 { fontDialog1.ShowDialog(); MessageBox.Show( fontDialog1.Font.ToString()); } private void printDocument2_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e) { }
时间: 2024-10-10 09:55:05