欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    文本编辑器的实现.ppt

    • 资源ID:91838858       资源大小:227.50KB        全文页数:39页
    • 资源格式: PPT        下载积分:11.9金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要11.9金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    文本编辑器的实现.ppt

    1第第4章章 文本编辑器的实现文本编辑器的实现 本章的目的是建立一个文本编辑器,同时继续本章的目的是建立一个文本编辑器,同时继续介绍控件的用法。有两类文本编辑器:单文档和多介绍控件的用法。有两类文本编辑器:单文档和多文档文本编辑器。单文档文本编辑器一次只能打开文档文本编辑器。单文档文本编辑器一次只能打开一个文件,如果要打开另一个文件,必须关闭当前一个文件,如果要打开另一个文件,必须关闭当前打开的文件,微软的写字板程序就是单文档字处理打开的文件,微软的写字板程序就是单文档字处理程序。多文档文本编辑器允许同时打开多个文件,程序。多文档文本编辑器允许同时打开多个文件,每个文件占用一个子窗口,微软的每个文件占用一个子窗口,微软的Word程序就是程序就是多文档字处理程序。本章首先介绍建立单文档文本多文档字处理程序。本章首先介绍建立单文档文本编辑器的方法,然后介绍建立多文档文本编辑器的编辑器的方法,然后介绍建立多文档文本编辑器的方法。方法。24.1 RichTextBox控件控件 使用使用RichTextBox 可以建立一个文本编辑器,它和可以建立一个文本编辑器,它和TextBox 的一些的一些属性、事件和方法相同,其新增属性、事件和方法如下:属性、事件和方法相同,其新增属性、事件和方法如下:u属性属性Dock:u属性属性SelectedText、SelectionLength、SelectionStart:u属性属性SelectionFont:u属性属性SelectionColor:u属性属性Lines:u属性属性Modified:u事件事件SelectionChange:u事件事件TextChanged:u方法方法Clear():u方法方法Copy()、Cut()、Paste():u方法方法SelectAll():u方法方法Find():u方法方法SaveFile()和和LoadFile():u方法方法Undo():u方法方法Redo():34.2 剪贴板功能剪贴板功能 放放RichTextBox控件到窗体。属性控件到窗体。属性Name=richTextBox1,Dock=Fill,Text=。private void menuItemEditCut_Click(object sender,EventArgs e)richTextBox1.Cut();/剪切剪切private void menuItemEditCopy_Click(object sender,EventArgs e)richTextBox1.Copy();/拷贝拷贝private void menuItemEditPaste_Click(object sender,EventArgs e)richTextBox1.Paste();/粘贴粘贴private void menuItemEditUndo_Click(object sender,EventArgs e)richTextBox1.Undo();/撤销撤销private void menuItemEditRedo_Click(object sender,EventArgs e)richTextBox1.Redo();/恢复恢复44.3 存取文件存取文件 文本编辑器都应具有文件存取功能,菜单顶级菜单项文本编辑器都应具有文件存取功能,菜单顶级菜单项“文件文件”的弹出菜单中一般包括如下菜单项:新建、打的弹出菜单中一般包括如下菜单项:新建、打开、关闭、保存和另存为等。本节实现以上菜单项。开、关闭、保存和另存为等。本节实现以上菜单项。4.3.1 OpenFileDialog和和SaveFileDialog控件控件两个对话框的两个对话框的 的常用属性:的常用属性:v属性属性FilterFilter:例:例如如Filter=Filter=“纯文本文件纯文本文件(*.txt)|*.txt|(*.txt)|*.txt|所有文件所有文件(*.*)|*.*(*.*)|*.*”v属性属性FilterIndexFilterIndex:v属性属性FileNameFileName:v属性属性InitialDirectoryInitialDirectory:v属性属性DefaultExtDefaultExt:v方法方法ShowDialog()ShowDialog():5674.3.2 存取文件功能实现存取文件功能实现 把把OpenFileDialogOpenFileDialog和和SaveFileDialogSaveFileDialog控件放到窗体中。为控件放到窗体中。为菜单增加顶级菜单项:文件,为其弹出菜单增加菜单项:菜单增加顶级菜单项:文件,为其弹出菜单增加菜单项:新建、打开新建、打开.、保存、保存.、另存为、另存为.、退出。修改这些菜、退出。修改这些菜单项的单项的NameName属性分别为:属性分别为:mainMenuFilemainMenuFile、menuItemFileNewmenuItemFileNew、menuItemFileOpenmenuItemFileOpen、menuItemFileSavemenuItemFileSave、menuItemFileSaveAsmenuItemFileSaveAs、menuItemFileExitmenuItemFileExit。为为Form1Form1类中定义变量:类中定义变量:string s_FileName=string s_FileName=,记录当前,记录当前编辑的文件名编辑的文件名 private void menuItemFileNew_Click(object private void menuItemFileNew_Click(object sender,EventArgs e)/sender,EventArgs e)/新建文件菜单项新建文件菜单项 richTextBox1.Text=;/richTextBox1.Text=;/或或richTextBox1.Clear();richTextBox1.Clear();s_FileName=;/s_FileName=;/新建文件没有文件名。新建文件没有文件名。8private void menuItemFileOpen_Click(/private void menuItemFileOpen_Click(/打开文件菜单项打开文件菜单项object sender,EventArgs e)object sender,EventArgs e)if(openFileDialog1.ShowDialog()=DialogResult.OK)if(openFileDialog1.ShowDialog()=DialogResult.OK)s_FileName=openFileDialog1.FileName;s_FileName=openFileDialog1.FileName;richTextBox1.LoadFile(openFileDialog1.FileName,richTextBox1.LoadFile(openFileDialog1.FileName,RichTextBoxStreamType.PlainText);RichTextBoxStreamType.PlainText);private void menuItemFileSaveAs_Click(/private void menuItemFileSaveAs_Click(/另存为菜单项另存为菜单项object sender,EventArgs e)object sender,EventArgs e)if(saveFileDialog1.ShowDialog()=DialogResult.OK)if(saveFileDialog1.ShowDialog()=DialogResult.OK)s_FileName=saveFileDialog1.FileName;s_FileName=saveFileDialog1.FileName;richTextBox1.SaveFile(saveFileDialog1.FileName,richTextBox1.SaveFile(saveFileDialog1.FileName,RichTextBoxStreamType.PlainText);RichTextBoxStreamType.PlainText);/注意存取文件类型应一致。注意存取文件类型应一致。9private void menuItemSaveFile_Click(/private void menuItemSaveFile_Click(/保存文件菜单项保存文件菜单项object sender,EventArgs e)object sender,EventArgs e)if(s_FileName.Length!=0)if(s_FileName.Length!=0)richTextBox1.SaveFile(s_FileName,richTextBox1.SaveFile(s_FileName,RichTextBoxStreamType.PlainText);RichTextBoxStreamType.PlainText);elseelsemenuItemFileSaveAs_Click(sender,e);menuItemFileSaveAs_Click(sender,e);private void menuItemExit_Click(private void menuItemExit_Click(/退出菜单项退出菜单项object sender,EventArgs e)object sender,EventArgs e)Close();Close();104.4 修改字体修改字体 为修改使用的字体,可打开字体对话框为修改使用的字体,可打开字体对话框FontDialogFontDialog,选择指定字体。可以按两种方式修改字体,如果,选择指定字体。可以按两种方式修改字体,如果未选中文本,表示以后键入的字符将按选定字体输未选中文本,表示以后键入的字符将按选定字体输入。如果选中文本,则仅修改选定文本的字体。修入。如果选中文本,则仅修改选定文本的字体。修改字符颜色也根据同样原则。改字符颜色也根据同样原则。4.4.1 FontDialog控件控件 可以用可以用FontDialogFontDialog对话框选定指定字体,对话框选定指定字体,FontDialogFontDialog控件和控件和OpenDialogOpenDialog控件的属性和方法控件的属性和方法基本相同,这里只介绍属性基本相同,这里只介绍属性FontFont,它代表用,它代表用FontDialogFontDialog对话框选定的字体。对话框选定的字体。11124.4.2 修改字体实现方法修改字体实现方法 放放FontDialogFontDialog控件到窗体,属性控件到窗体,属性Name=fontDialog1Name=fontDialog1。为菜单增加顶级菜单项:格式,属性为菜单增加顶级菜单项:格式,属性NameName为为mainMenuModelmainMenuModel,为其弹出菜单增加菜单项:字体,属,为其弹出菜单增加菜单项:字体,属性性NameName为为menuItemModelFontmenuItemModelFont,为菜单,为菜单“格式格式|字体字体”菜单项增加单击事件处理函数如下:菜单项增加单击事件处理函数如下:private void menuItemModelFont_Click(private void menuItemModelFont_Click(object sender,EventArgs e)object sender,EventArgs e)if(fontDialog1.ShowDialog()=DialogResult.OK)if(fontDialog1.ShowDialog()=DialogResult.OK)richTextBox1.SelectionFont=fontDialog1.Font;richTextBox1.SelectionFont=fontDialog1.Font;134.5 About对话框对话框 单击菜单单击菜单 项目项目|添加添加WindowsWindows窗体窗体 菜单项,弹出对话框菜单项,弹出对话框 14如上图添加一个窗体,修改如上图添加一个窗体,修改formAboutformAbout窗体属性窗体属性StartPosition=CenterParentStartPosition=CenterParent,修改属性修改属性MaximizeBox=FalseMaximizeBox=False,MinimizeBox=FalseMinimizeBox=False 属性属性FormBorderStyle=FixedDialogFormBorderStyle=FixedDialog 运行运行界面界面 如下:如下:15标题为标题为“确定确定”按钮单击事件处理函数如下:按钮单击事件处理函数如下:private void button1_Click(object private void button1_Click(object sender,EventArgs e)sender,EventArgs e)Close();Close();为菜单增加顶级菜单项:帮助,为其弹出菜单增加标为菜单增加顶级菜单项:帮助,为其弹出菜单增加标题为题为“关于关于”的的菜单项,属性菜单项,属性NameName为为menuItemAboutmenuItemAbout。菜单菜单“帮助帮助|关于关于”菜单项单击事菜单项单击事件处理函数如下:件处理函数如下:private void menuItemAbout_Click(private void menuItemAbout_Click(object sender,EventArgs e)object sender,EventArgs e)formAbout AboutDialog=new formAbout();formAbout AboutDialog=new formAbout();AboutDialog.ShowDialog(this);AboutDialog.ShowDialog(this);/打开模式对话框打开模式对话框/注意不能使用注意不能使用Show()Show()函数,它打开非模式对话框函数,它打开非模式对话框 164.6 文本编辑器查找替换功能文本编辑器查找替换功能 本节首先介绍模式对话框和非模式对话框的概念。本节首先介绍模式对话框和非模式对话框的概念。并使用非模式对话框在文本编辑器中实现查找和替换并使用非模式对话框在文本编辑器中实现查找和替换功能。功能。4.6.1 4.6.1 模式对话框和非模式对话框模式对话框和非模式对话框 模式对话框和非模式对话框的区别是:模式对话框和非模式对话框的区别是:两类对话框本质上都是窗体,两类对话框本质上都是窗体,是是FormForm类的派生类,只类的派生类,只是打开时使用的方法不一样,打开模式对话框,使用是打开时使用的方法不一样,打开模式对话框,使用方法方法ShowDialog()ShowDialog(),而打开非模式对话框,使用方法,而打开非模式对话框,使用方法ShowShow()()。174.6.2 查找替换功能的实现查找替换功能的实现 建立新窗体,建立新窗体,窗体文件名称为窗体文件名称为formFindReplace.csformFindReplace.cs,作为作为 查找替查找替换换 对话框。对话框。窗体窗体类类名也名也为为formFindReplace,formFindReplace,为为formFindReplaceformFindReplace类类增加增加变变量:量:Form1 MainForm1;Form1 MainForm1;属性属性StartPosition=CenterParentStartPosition=CenterParent,MaximizeBox=FalseMaximizeBox=False,MinimizeBox=False,FormBorderStyle=FixedDialog,Text=MinimizeBox=False,FormBorderStyle=FixedDialog,Text=“查查找和替找和替换换”,对话对话框界面如框界面如图图:184.6.2 查找替换功能的实现查找替换功能的实现(续)(续)修改修改formFindReplaceformFindReplace类构造函数如下类构造函数如下,增加的参数增加的参数form1form1是主窗体是主窗体属性属性NameName的值。的值。public formFindReplace(Form1 form1)public formFindReplace(Form1 form1)InitializeComponent();InitializeComponent();MainForm1=form1;/MainForm1=form1;/新增语句新增语句,记录主窗体属性记录主窗体属性NameName的值的值/有了有了Form1Form1引用,可以在引用,可以在formFindReplaceformFindReplace类类中中调调用用Form1Form1类类的公有方法的公有方法 查找替换对话框查找替换对话框中中标题为标题为“查查找下一个找下一个”按按钮单击钮单击事件函数如下:事件函数如下:private void buttonFind_Click(object sender,EventArgs e)private void buttonFind_Click(object sender,EventArgs e)if(textBox1.Text.Length!=0)if(textBox1.Text.Length!=0)/MainForm1.FindRichTextBoxString/MainForm1.FindRichTextBoxString方法见后面定义方法见后面定义MainForm1.FindRichTextBoxString(textBox1.Text);MainForm1.FindRichTextBoxString(textBox1.Text);elseelseMessageBox.Show(MessageBox.Show(“查找字符串不能为空查找字符串不能为空”,提示提示,MessageBoxButtons.OK);,MessageBoxButtons.OK);/MessageBox/MessageBox是是对话对话框,使用方法框,使用方法见节见节 194.6.2 查找替换功能的实现查找替换功能的实现(续)(续)查找替换对话框查找替换对话框中中标题为标题为“替替换查换查到字符到字符”按按钮单击钮单击事件函数如事件函数如下下:private void buttonReplace_Click(object sender,EventArgs e)if(textBox2.Text.Length!=0)MainForm1.ReplaceRichTextBoxString(textBox2.Text);else /MainForm1.ReplaceRichTextBoxString后面定义后面定义 MessageBox.Show(“替替换换字符串不能字符串不能为为空空”,提示提示,MessageBoxButtons.OK);为为Form1Form1类类增加增加变变量:量:int FindPostion=0int FindPostion=0,该变该变量用来量用来记录记录下下一次一次查查找的开始位置。找的开始位置。为为Form1Form1窗体菜窗体菜单单的的 编辑编辑 顶级顶级菜菜单项单项的的弹弹出菜出菜单单增加菜增加菜单项单项:查查找和替找和替换换,属性,属性NameName为为menuItemFindReplacemenuItemFindReplace。查查找和替找和替换换 菜菜单项单击单项单击事件事件处处理函数理函数如下:如下:204.6.2 查找替换功能的实现查找替换功能的实现(续)(续)private void menuItemFindReplace_Click(private void menuItemFindReplace_Click(object sender,EventArgs e)object sender,EventArgs e)FindPostion=0;FindPostion=0;/下句中的下句中的thisthis是是Form1Form1类对象引用类对象引用formFindReplace FindReplaceDialog=new formFindReplace FindReplaceDialog=new formFindReplace(this);formFindReplace(this);FindReplaceDialog.Show();FindReplaceDialog.Show();/打开非模式对话框使用打开非模式对话框使用Show()Show()方法方法 定义定义FindRichTextBoxStringFindRichTextBoxString方法方法 public void FindRichTextBoxString(string FindString)public void FindRichTextBoxString(string FindString)if(FindPostion=richTextBox1.Text.Length)if(FindPostion=richTextBox1.Text.Length)MessageBox.Show MessageBox.Show(“已到文本底部已到文本底部,再次查找将从文本开始处查找再次查找将从文本开始处查找”,提示提示,MessageBoxButtons.OK);,MessageBoxButtons.OK);FindPostion=0;FindPostion=0;/下次查找的开始位置下次查找的开始位置 return;return;214.6.2 查找替换功能的实现查找替换功能的实现(续)(续)FindPostion=richTextBox1.Find(FindString,FindPostion,FindPostion=richTextBox1.Find(FindString,FindPostion,RichTextBoxFinds.MatchCase);RichTextBoxFinds.MatchCase);if(FindPostion=-1)/-1if(FindPostion=-1)/-1表示未找到匹配字符串,提示用户表示未找到匹配字符串,提示用户 MessageBox.Show(MessageBox.Show(未找到匹配字符串未找到匹配字符串,再次查找将从文本开始再次查找将从文本开始处查找处查找,提示提示,MessageBoxButtons.OK);,MessageBoxButtons.OK);FindPostion=0;FindPostion=0;/下次查找的开始位置下次查找的开始位置 else else/找到匹配字符串找到匹配字符串 richTextBox1.Focus();/richTextBox1.Focus();/主窗体成为注视窗口主窗体成为注视窗口 FindPostion+=FindString.Length;FindPostion+=FindString.Length;/下次查找的开始位置在此次找到字符串之后下次查找的开始位置在此次找到字符串之后 224.6.2 查找替换功能的实现查找替换功能的实现(续)(续)替换字符串的方法替换字符串的方法:public void ReplaceRichTextBoxString(public void ReplaceRichTextBoxString(string ReplaceString)string ReplaceString)if(richTextBox1.SelectedText.Length!=0)if(richTextBox1.SelectedText.Length!=0)richTextBox1.SelectedText=ReplaceString;richTextBox1.SelectedText=ReplaceString;/替换被选定的字符串替换被选定的字符串 234.6.2 查找替换功能的实现查找替换功能的实现(续)(续)查找和替换运行结果查找和替换运行结果:244.7.1 4.7.1 对话框对话框MessageBox MessageBox.Show(this,MessageBox.Show(this,要保存当前更改吗?要保存当前更改吗?,保存更改吗?保存更改吗?,MessageBoxButtons.YesNoCancel,MessageBoxIcon.Question);MessageBoxButtons.YesNoCancel,MessageBoxIcon.Question);254.7.2 4.7.2 提示保存已被修改的文件提示保存已被修改的文件 为为Form1Form1类增加一个类增加一个boolbool变量变量bSave=falsebSave=false作为标记,作为标记,用来跟踪控件用来跟踪控件RichTextBoxRichTextBox中的文本内容是否被修改。中的文本内容是否被修改。在程序开始运行、建立和打开一个新文件后,在程序开始运行、建立和打开一个新文件后,bSave=falsebSave=false,表示如果关闭当前文件,不必提示用户,表示如果关闭当前文件,不必提示用户保存当前文件。当保存当前文件。当RichTextBoxRichTextBox控件中的文本被修改,控件中的文本被修改,将激活将激活RichTextBoxRichTextBox控件控件TextChangedTextChanged事件,在该事件事件,在该事件处理函数中,使处理函数中,使bSave=truebSave=true,表示关闭当前文件前,表示关闭当前文件前,要询问用户是否保存当前已被修改的文件。要询问用户是否保存当前已被修改的文件。首先在主窗体首先在主窗体Form1Form1类中增加一个函数,其功能是类中增加一个函数,其功能是如果检查到当前文件已被修改,用对话框询问用户是如果检查到当前文件已被修改,用对话框询问用户是否保存当前文件,根据用户的选择作相应的处理,该否保存当前文件,根据用户的选择作相应的处理,该函数返回函数返回truetrue,表示继续操作,该函数返回,表示继续操作,该函数返回falsefalse,表,表示忽略此次操作。之所以要增加这个函数是因为有三示忽略此次操作。之所以要增加这个函数是因为有三处要用到此函数。该函数定义如下:处要用到此函数。该函数定义如下:26public bool IfSaveOldFile()public bool IfSaveOldFile()bool ReturnValue=true;bool ReturnValue=true;if(bSave)if(bSave)System.Windows.Forms.DialogResult dr;System.Windows.Forms.DialogResult dr;dr=MessageBox.Show(this,dr=MessageBox.Show(this,要保存当前更改吗?要保存当前更改吗?,保存更改吗?保存更改吗?,MessageBoxButtons.YesNoCancel,MessageBoxButtons.YesNoCancel,MessageBoxIcon.Question);MessageBoxIcon.Question);switch(dr)switch(dr)/根据用户选择做相应处理根据用户选择做相应处理 case System.Windows.Forms.DialogResult.Yes:case System.Windows.Forms.DialogResult.Yes:bSave=false;/bSave=false;/保存文件后,应使保存文件后,应使bSavebSave为为falsefalseif(s_FileName.Length!=0)if(s_FileName.Length!=0)richTextBox1.SaveFile(s_FileName,richTextBox1.SaveFile(s_FileName,RichTextBoxStreamType.PlainText);RichTextBoxStreamType.PlainText);27elseelse SaveFileDialog saveFileDialog1=SaveFileDialog saveFileDialog1=new SaveFileDialog();new SaveFileDialog();if(saveFileDialog1.ShowDialog()=if(saveFileDialog1.ShowDialog()=DialogResult.OK)DialogResult.OK)s_FileName=saveFileDialog1.FileName;s_FileName=saveFileDialog1.FileName;richTextBox1.SaveFile(s_FileName,richTextBox1.SaveFile(s_FileName,RichTextBoxStreamType.PlainText);RichTextBoxStreamType.PlainText);/返回返回truetrue通知调用本方法的程序本次操作继续通知调用本方法的程序本次操作继续ReturnValue=true;ReturnValue=true;break;break;28/单击了单击了nono按钮,不保存按钮,不保存case System.Windows.Forms.DialogResult.No:case System.Windows.Forms.DialogResult.No:bSave=false;bSave=false;ReturnValue=true;ReturnValue=true;break;break;/单击了单击了CancelCancel按钮按钮case System.Windows.Forms.DialogResult.Cancel:case System.Windows.Forms.DialogResult.Cancel:ReturnValue=false;ReturnValue=false;break;break;/返回返回falsefalse,通知调用本方法的程序,本次操作取消,通知调用本方法的程序,本次操作取消 return ReturnValue;return ReturnValue;294.7.2 4.7.2 提示保存已被修改的文件提示保存已被修改的文件(续续)在菜单在菜单“文件文件|新建新建”和和“文件文件|打开打开”菜单项的事件函数的第菜单项的事件函数的第1 1条条语句前增加如下语句:语句前增加如下语句:if(!IfSaveOldFile()if(!IfSaveOldFile()/如果返回如果返回falsefalse本次操作取消本次操作取消 return;return;修改菜修改菜单单“文件文件|保存保存.”菜菜单项单击单项单击事件事件处处理函数如下:理函数如下:private void menuItemSaveFile_Click(private void menuItemSaveFile_Click(object sender,EventArgs e)object sender,EventArgs e)if(s_FileName.Length!=0)if(s_FileName.Length!=0)bSave=false;richTextBox1.SaveFile(s_FileName,bSave=false;richTextBox1.SaveFile(s_FileName,RichTextBoxStreamType.PlainText);RichTextBoxStreamType.PlainText);elseelsemenuItemSaveAs_Click(sender,e);menuItemSaveAs_Click(sender,e);304.7.2 4.7.2 提示保存已被修改的文件提示保存已被修改的文件(续续)修改菜单修改菜单“文件文件|另存为另存为.”菜单项单击事件函数如下:菜单项单击事件函数如下:private void menuItemSaveAs_Click(private void menuItemSaveAs_Click(object sender,EventArgs e)object sender,EventArgs e)SaveFileDialog saveFileDialog1=new SaveFileDialog();SaveFileDialog saveFileDialog1=new SaveFileDialog();saveFileDialog1.Filter=saveFileDialog1.Filter=纯文本文件纯文本文件(*.txt)|*.txt|(*.txt)|*.txt|所有文件所有文件(*.*)|*.*;(*.*)|*.*;saveFileDialog1.FilterIndex=1;saveFileDialog1.FilterIndex=1;if(saveFileDialog1.ShowDialog()=DialogResult.OK)if(saveFileDialog1.ShowDialog()=DialogResult.OK)s_FileName=saveFileDialog1.FileName;s_FileName=saveFileDialog1.FileName;richTextBox1.SaveFile(s_FileName,richTextBox1.SaveFile(s_FileName,RichTextBoxStreamType.PlainText);RichTextBoxStreamType.PlainText);bSave=false;bSave=false;314.7.2 4.7.2 提示保存已被修改的文件提示保存已被修改的文件(续续)为为RichTextBoxRichTextBox控件控件TextChangedTextChanged事件增加事件函数如下:事件增加事件函数如下:private void richTextBox1_TextChanged(private void richTextBox1_TextChanged(object sender,EventArgs e)object sender,EventArgs e)bSave=true;bSave=true;窗体窗体Form1Form1的的FormClosingFormClosing事件是在关事件是在关闭闭窗口之前窗口之前产产生生的事件,此的事件,此时时,窗体中的控件,窗体中的控件还还存在,存在,还还可以保存修可以保存修改的内容,也可以不退出。增加改的内容,也可以不退出。增加ClosingClosing事件的事件事件的事件处处理函数如下:理函数如下:private void Form1_FormClosing(object sender,private void Form1_FormClosing(object sender,FormClosingEventArgs e)FormClosingEven

    注意事项

    本文(文本编辑器的实现.ppt)为本站会员(wuy****n92)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开