简单记事本的写法.docx

上传人:b****7 文档编号:10796609 上传时间:2023-02-23 格式:DOCX 页数:16 大小:16.62KB
下载 相关 举报
简单记事本的写法.docx_第1页
第1页 / 共16页
简单记事本的写法.docx_第2页
第2页 / 共16页
简单记事本的写法.docx_第3页
第3页 / 共16页
简单记事本的写法.docx_第4页
第4页 / 共16页
简单记事本的写法.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

简单记事本的写法.docx

《简单记事本的写法.docx》由会员分享,可在线阅读,更多相关《简单记事本的写法.docx(16页珍藏版)》请在冰豆网上搜索。

简单记事本的写法.docx

简单记事本的写法

简单记事本的写法

用C#编写记事本首先要引用与文件读写有关的命名空间usingSystem.IO;

记事本的撤销,复制,粘贴,剪切,删除,字体,颜色等实现起来比较简单,只要几句代码:

privatevoid剪切ToolStripMenuItem_Click(objectsender,EventArgse)

{

if(textBox1.SelectionLength!

=0)

{

textBox1.Cut();

}

}

privatevoid复制CToolStripMenuItem_Click(objectsender,EventArgse)

{

if(textBox1.SelectionLength!

=0)

{

textBox1.Copy();

}

}

privatevoid粘贴PToolStripMenuItem_Click(objectsender,EventArgse)

{

if(Clipboard.GetText().ToString()!

="")//剪贴板里有文本

textBox1.Paste();

}

 

}

privatevoid撤销ToolStripMenuItem_Click(objectsender,EventArgse)

{

if(textBox1.CanUndo==true)//文本可以撤销

{

textBox1.Undo();

textBox1.ClearUndo();//消除最近的撤销信息

}

}

privatevoid全选ToolStripMenuItem_Click(objectsender,EventArgse)

{

if(textBox1.Text!

=string.Empty)

{

textBox1.SelectAll();

}

}

privatevoid删除ToolStripMenuItem_Click(objectsender,EventArgse)

{

if(textBox1.SelectedText!

=string.Empty)

{

textBox1.SelectedText=string.Empty;

}

}

privatevoid时间日期ToolStripMenuItem_Click(objectsender,EventArgse)

{

textBox1.Text=textBox1.Text+DateTime.Now.ToString();

}

privatevoid字体ToolStripMenuItem_Click(objectsender,EventArgse)

{

if(fontDialog1.ShowDialog()==DialogResult.OK)

{

textBox1.Font=fontDialog1.Font;

}

}

privatevoid颜色ToolStripMenuItem_Click(objectsender,EventArgse)

{

if(colorDialog1.ShowDialog()==DialogResult.OK)

{

textBox1.ForeColor=colorDialog1.Color;

}

}

privatevoid自动换行ToolStripMenuItem_Click(objectsender,EventArgse)

{

if(自动换行ToolStripMenuItem.Checked==true)//如果选中了自动换行

{

textBox1.WordWrap=true;//文本就可以换行(前提是有水平垂直滚动条)

}

else

{

textBox1.WordWrap=false;

}

}

privatevoid编辑EToolStripMenuItem_DropDownOpened(objectsender,EventArgse)//当单击编辑打开时,判断各项能不能使用

{

if(textBox1.Modified==false)

{

 

撤销ToolStripMenuItem.Enabled=false;

}

else

{

撤销ToolStripMenuItem.Enabled=true;

}

if(textBox1.SelectedText=="")

{

剪切ToolStripMenuItem.Enabled=false;

复制CToolStripMenuItem.Enabled=false;

删除ToolStripMenuItem.Enabled=false;

}

else

{

剪切ToolStripMenuItem.Enabled=true;

复制CToolStripMenuItem.Enabled=true;

删除ToolStripMenuItem.Enabled=true;

}

if(textBox1.Text=="")

{

查找ToolStripMenuItem.Enabled=false;

替换ToolStripMenuItem.Enabled=false;

}

else

{

查找ToolStripMenuItem.Enabled=true;

替换ToolStripMenuItem.Enabled=true;

}

if(Clipboard.GetText().ToString()=="")

{

粘贴PToolStripMenuItem.Enabled=false;

}

else

{

粘贴PToolStripMenuItem.Enabled=true;

}

}

privatevoid另存为AToolStripMenuItem_Click(objectsender,EventArgse)

{

if(this.saveFileDialog1.ShowDialog()==DialogResult.OK)

{

StreamWriterwriter=newStreamWriter(saveFileDialog1.FileName,true,System.Text.Encoding.Default);

writer.Write(textBox1.Text);

writer.Close();

textBox1.Modified=false;

}

}//另存为直接打开保存对话框,创建流写入对象(其构造函数参数一是保存路径及文件名,二是是否覆盖原文件,三是一本系统默认的字符编码保存),用流写入对象的write方法(要被写入保存的文本),最后关闭流写入对象。

将文本的是否变动设为false,这样再关闭或保存时不会提示要求保存了。

privatevoid打开OToolStripMenuItem1_Click(objectsender,EventArgse)

{

if(this.openFileDialog1.ShowDialog()==DialogResult.OK)

{

this.Text=openFileDialog1.SafeFileName+"-记事本";//safeFileName为文件名不加路径

StreamReaderreader=newStreamReader(openFileDialog1.FileName,System.Text.Encoding.Default);

textBox1.Text=reader.ReadToEnd();

this.Filename=openFileDialog1.FileName;//给公共字符串字段赋值用于保存时判断文件名是否存在

reader.Close();

}

}//打开创建的流读取对象,与流写入对象差不多。

其中Filename是在类下面声明的值为""的字符串公共变量,在打开文本时就被文件路径及名称赋值,用于在以后保存文件时自动保存,而不是打开保存对话框保

存。

privatevoid保存SToolStripMenuItem_Click(objectsender,EventArgse)

{

if(this.Filename==string.Empty)//判断文件是否存在

{

//不存在就打开对话框保存,把用户单击对话框按钮时返回的值赋给枚举类的DialogResult变量result。

DialogResultresult=saveFileDialog1.ShowDialog();

如果result值为DialogResult.Cancel,说明用户单击了取消按钮,则什么也不处理.

if(result==DialogResult.Cancel)

{

textBox1.Text=textBox1.Text;

}

else

{

StreamWriterwriter=newStreamWriter(saveFileDialog1.FileName,true,ASCIIEncoding.Default);

writer.Write(textBox1.Text);

writer.Close();

textBox1.Modified=false;

}

}

else

{

StreamWriterwriter=newStreamWriter(this.Filename,true,ASCIIEncoding.Default);

writer.Write(textBox1.Text);

writer.Close();

textBox1.Modified=false;

}

}

//新建是保存跟另存为的结合体

privatevoid新建ToolStripMenuItem_Click(objectsender,EventArgse)

{

if(textBox1.Modified==true)

{

DialogResultresult=MessageBox.Show("文本发生了改变,要保存吗?

","注意",MessageBoxButtons.YesNoCancel);

if(result==DialogResult.Yes)

{

if(this.Filename=="")

{

DialogResultbresult=saveFileDialog1.ShowDialog();

if(bresult==DialogResult.Cancel)

{

textBox1.Text=textBox1.Text;

}

else

{

saveFileDialog1.ShowDialog();

StreamWriterwriter=newStreamWriter(saveFileDialog1.FileName,true,ASCIIEncoding.Default);

writer.Write(textBox1.Text);

writer.Close();

textBox1.Modified=false;

}

}

else

{

StreamWriterwriter=newStreamWriter(this.Filename,true,ASCIIEncoding.Default);

writer.Write(textBox1.Text);

writer.Close();

textBox1.Modified=false;

}

}

elseif(result==DialogResult.No)

{

textBox1.Clear();

}

else

{

textBox1.Text=textBox1.Text;

}

 

}

else

{

textBox1.Clear();

}

}

给记事本的菜单栏里的功能加快捷键(属性shortcutkeys)

一下是查找替换的代码form5为查找替换窗口,form3为记事本窗口

usingSystem;

usingSystem.Collections.Generic;

usingSystem.ComponentModel;

usingSystem.Data;

usingSystem.Drawing;

usingSystem.Linq;

usingSystem.Text;

usingSystem.Windows.Forms;

namespace数据库编程基础

{

publicpartialclassForm5:

Form

{

publicstringchazhaowenben;//接受来自记事本里的文本

publicintindex;

publicintlastindex;

publicintguangbiaowenzhi;

publicstringjishibenwenben;

publicForm5()

{

InitializeComponent();

}

 

privatevoidbtchazhao_Click(objectsender,EventArgse)

{

Form3form3=(Form3)this.Owner;

jishibenwenben=form3.str;

chazhaowenben=chazhao.Text;

if(xiangqian.Checked==true)

{

if(xufendaxiaoxie.Checked==true)

{

index=jishibenwenben.IndexOf(chazhaowenben,form3.guangbiao/*guangbiaowenzhi*/);

}

else

{

index=jishibenwenben.IndexOf(chazhaowenben,form3.guangbiao/*guangbiaowenzhi*/,StringComparison.CurrentCultureIgnoreCase);

}

if(index==-1)

{

MessageBox.Show(string.Format("查不到/"{0}/"或已经到文件尾",chazhaowenben));

}

else

{

form3.textBox1.Select(index,chazhaowenben.Length);

form3.textBox1.Focus();

form3.guangbiao/*guangbiaowenzhi*/=index+chazhaowenben.Length;

}

}

else

{

if(xufendaxiaoxie.Checked==true)

{

lastindex=jishibenwenben.LastIndexOf(chazhaowenben,form3.guangbiao/*guangbiaowenzhi*/);

}

else

{

lastindex=jishibenwenben.LastIndexOf(chazhaowenben,form3.guangbiao/*guangbiaowenzhi*/,StringComparison.CurrentCultureIgnoreCase);

}

if(lastindex==-1)

{

MessageBox.Show(string.Format("查不到/"{0}/"或已经到文件头",chazhaowenben));

}

else

{

form3.textBox1.Select(lastindex,chazhaowenben.Length);

form3.textBox1.Focus();

form3.guangbiao/*guangbiaowenzhi*/=lastindex-1;

if(form3.guangbiao<0)

{

form3.guangbiao

=lastindex-1;

MessageBox.Show(string.Format("查不到/"{0}/"或已经到文件头",chazhaowenben));

}

}

}

}

 

privatevoidchazhao_TextChanged(objectsender,EventArgse)

{

if(this.chazhao.Text=="")

{

btchazhao.Enabled=false;

bttihuan.Enabled=false;

}

else

{

btchazhao.Enabled=true;

bttihuan.Enabled=true;

}

}

privatevoidForm5_Load(objectsender,EventArgse)

{

this.label4.Text="0";

if(this.chazhao.Text=="")

{

btchazhao.Enabled=false;

bttihuan.Enabled=false;

}

else

{

btchazhao.Enabled=true;

bttihuan.Enabled=true;

}

}

privatevoidbtquxiao_Click(objectsender,EventArgse)

{

this.Close();

}

privatevoidbutton1_Click(objectsender,EventArgse)

{

Form3form3=(Form3)this.Owner;

//guangbiaowenzhi=form3.guangbiao;

//this.label4.Text=guangbiaowenzhi.ToString();

this.label4.Text=Convert.ToString(form3.guangbiao);

}

privatevoidbttihuan_Click(objectsender,EventArgse)

{

Form3form3=(Form3)this.Owner;

form3.textBox1.SelectedText=this.tihuan.Text;

form3.textBox1.Modified=true;

}

 

}

}

只有查找替换必须的代码

publicpartialclassForm3:

Form

{

privatestringFilename="";

publicstringstr;//用于存储记事本里的文本

publicintguangbiao;//用于存储光标位置

privatevoid查找替换ToolStripMenuItem_Click(objectsender,EventArgse)

{

Form5form5=newForm5();

form5.Owner=this;

str=this.textBox1.Text;

//guangbiao=this.textBox1.SelectionStart;

//form5.guangbiaowenzhi=this.textBox1.SelectionStart;

form5.Show();

}

privatevoidtextBox1_Click(objectsender,EventArgse)

{

//Form5form5=newForm5();

//form5.Owner=this;

str=this.textBox1.Text;

//guangbiao=this.textBox1.SelectionStart;

//form5.guangbiaowenzhi=this.textBox1.SelectionStart;

this.guangbiao=this.textBox1.SelectionStart;

}

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1