C#编写的文本编辑器课程设计.docx

上传人:b****2 文档编号:2026448 上传时间:2023-05-02 格式:DOCX 页数:66 大小:25.83KB
下载 相关 举报
C#编写的文本编辑器课程设计.docx_第1页
第1页 / 共66页
C#编写的文本编辑器课程设计.docx_第2页
第2页 / 共66页
C#编写的文本编辑器课程设计.docx_第3页
第3页 / 共66页
C#编写的文本编辑器课程设计.docx_第4页
第4页 / 共66页
C#编写的文本编辑器课程设计.docx_第5页
第5页 / 共66页
C#编写的文本编辑器课程设计.docx_第6页
第6页 / 共66页
C#编写的文本编辑器课程设计.docx_第7页
第7页 / 共66页
C#编写的文本编辑器课程设计.docx_第8页
第8页 / 共66页
C#编写的文本编辑器课程设计.docx_第9页
第9页 / 共66页
C#编写的文本编辑器课程设计.docx_第10页
第10页 / 共66页
C#编写的文本编辑器课程设计.docx_第11页
第11页 / 共66页
C#编写的文本编辑器课程设计.docx_第12页
第12页 / 共66页
C#编写的文本编辑器课程设计.docx_第13页
第13页 / 共66页
C#编写的文本编辑器课程设计.docx_第14页
第14页 / 共66页
C#编写的文本编辑器课程设计.docx_第15页
第15页 / 共66页
C#编写的文本编辑器课程设计.docx_第16页
第16页 / 共66页
C#编写的文本编辑器课程设计.docx_第17页
第17页 / 共66页
C#编写的文本编辑器课程设计.docx_第18页
第18页 / 共66页
C#编写的文本编辑器课程设计.docx_第19页
第19页 / 共66页
C#编写的文本编辑器课程设计.docx_第20页
第20页 / 共66页
亲,该文档总共66页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

C#编写的文本编辑器课程设计.docx

《C#编写的文本编辑器课程设计.docx》由会员分享,可在线阅读,更多相关《C#编写的文本编辑器课程设计.docx(66页珍藏版)》请在冰点文库上搜索。

C#编写的文本编辑器课程设计.docx

C#编写的文本编辑器课程设计

 

河南中医学院

 

《C#程序设计》课程设计报告

 

文本编辑器

 

院系:

 

专业:

 

班级:

 

信息技术学院

 

信息管理与信息系统专业

 

2010级信管一班

姓名:

 

指导教师:

 

完成日期:

2011年6月10日

 

设计题目:

文本编辑器

1.题目描述

设计一个文本编辑器,能够实现对文本的编辑,窗体应有:

文件,编辑,格式,查看,帮助。

(模拟文本文档,添加部分word功能)

提供以下功能:

1.1文件操作能够实现:

新建、打开、保存、另存为、页面属性、打印、打印预览、退出功能。

1.2编辑操作能够实现:

撤销、剪切、复制、粘贴、删除、查找、转到、全选、时间/日期、替

换功能。

1.3格式操作能够实现:

自动换行、字体、颜色、背景颜色设置。

1.4查看操作能够实现:

状态栏。

1.5帮助操作能够实现:

帮助主题、关于记事本。

另:

(1)实现鼠标的右键常用功能,如复制、粘贴、剪切、撤销、全选、颜色。

(2)实现各功能的快捷键设置

(3)实现文本框的外观设置

1.应用程序功能说明

 

文件

 

编辑

新建:

在未保存的情况下提示是否需要对文件进行保存

打开:

打开已有的文件

保存:

对文件进行保存,并显示保存的位置

另存为:

和保存的功能基本相似

页面属性:

显示文本文档的页面属性

打印:

实现对文本的打印功能

打印预览:

打印前对打印效果的预览

退出:

关闭打开的文本文档

撤销:

撤除上一步操作

剪切:

将选中的部分剪切掉

复制:

复制选中的部分

粘贴:

对剪切和复制的部分进行粘贴

删除:

删除选中的部分

查找:

实现单方向查找

全选:

选中文本文档中的全部内容

时间/日期:

在文本后加上时间

替换:

对那些需要改变的内容实施替换和全部替换

 

自动换行:

在一行写满之后,自动跳转到下一行

格式字体:

调用系统中自带的字体,实现对字体样式和大小的改变颜色:

调用系统中自带的颜色,实现对字体颜色的改变

背景颜色:

在给定的几种颜色中选一种作为背景颜色

 

查看状态栏:

显示当前输入文本的字数和年/月/日

 

帮助主题:

显示帮助部分

帮助关于记事本:

版权的说明

客户反馈:

对客户的满意程度实施调查

3.源程序

3.1Form1部分源代码

usingSystem;

usingSystem.Collections.Generic;

usingSystem.ComponentModel;

usingSystem.Data;

usingSystem.Drawing;

usingSystem.Linq;

usingSystem.Text;

usingSystem.Windows.Forms;

usingSystem.IO;//调用命名空间

usingSystem.Drawing.Printing;

namespace模拟文本文档ì

{

 

//调用打印命名空间

public

partial

class

Form1:

Form

{

stringname;

stringdk;

StringReaderstreamToPrint=

FontprintFont;

//intFindPosition=0;

publicintk=0;

publicForm1()

 

null;

{

InitializeComponent();

}

private

voidForm1_Load(object

sender,

EventArgse)

{

撤销¨2ToolStripMenuItem.Enabled=

false;//在程序运行开始时这些选择都是

无效的

剪切DToolStripMenuItem.Enabled=复制ToolStripMenuItem.Enabled=删除yToolStripMenuItem.Enabled=

false;

false;

false;

 

转到ì?

ToolStripMenuItem.Enabled=false;

//状态栏ToolStripMenuItem.Enabled=false;

查找替换ToolStripMenuItem.Enabled=false

 

;

 

this.richTextBox1.Anchor=

(System.Windows.Forms.AnchorStyles)(System.Windows.Forms.AnchorStyles.Left|

System.Windows.Forms.AnchorStyles.Bottom|

System.Windows.Forms.AnchorStyles.Right|

System.Windows.Forms.AnchorStyles.Top);//richTextBox1的放大与还原代

}

private

void

字体?

?

ToolStripMenuItem_Click(

object

sender,

EventArgse)

{

if

(fontDialog1.ShowDialog()==

DialogResult

.OK)//

获取对话框的返回值是确

richTextBox1.SelectionFont=fontDialog1.Font;

//获取系统的字体

}

private

void

新建ToolStripMenuItem_Click(

object

sender,

EventArgse)

{

if

(richTextBox1.Modified==

true

{

DialogResultn=MessageBox.Show("文件"+Text+"”内容已修改\n是否

要保存","提示",MessageBoxButtons.YesNoCancel,MessageBoxIcon.Exclamation);//带有黄

色感叹号的MessageBox

switch(n)//使switch用语句判断

{

case(DialogResult.Yes):

保存ToolStripMenuItem_Click(sender,e);

break;

case(DialogResult.No):

richTextBox1.Text="";

break;

case(DialogResult.Cancel):

richTextBox1.Modified=false;

break;

}

}

}

private

void

打开ToolStripMenuItem_Click_1(

object

sender,

EventArgse)

{

OpenFileDialog

newdk.Title=

stringdakai=

Environment.GetFolderPath(

newdk=newOpenFileDialog();//实例化newdk

"打开";//设置文件对话框的标题

 

Environment.SpecialFolder.Desktop);//从电脑中检索的对应文

件赋值给字符串变量

dakai

//将dakai

赋值给newdk

 

newdk.Filter="纯文本(*.txt)|*.txt|c#源文件(*.cs)|*.cs|10信管一班陈勇

(*.txt)|*.10信管一班陈勇";//文件名筛选器

newdk.ValidateNames=true;

newdk.CheckFileExists=true;

newdk.ShowHelp=true;//获取帮助按钮

newdk.Multiselect=true;

newdk.FilterIndex=2;//表示32位的有效整数不可随意赋值

if(openFileDialog1.ShowDialog()==DialogResult.OK)//在打开对话框确认的

情况下

{

dk=openFileDialog1.FileName;//将获取的文件名字符串赋值给

this.richTextBox1.Text=newdk.FileName;

richTextBox1.LoadFile(openFileDialog1.FileName,

RichTextBoxStreamType.PlainText);

}

dk

}

private

void

保存ToolStripMenuItem_Click(

objectsender,

EventArgse)

{

try//

使用语句处理异常情况

{

StreamWriterbc=newStreamWriter(name,false,

Encoding.GetEncoding("gb2312"));

stringbaocun=richTextBox1.Text;

bc.Write(baocun);

bc.Close();

}

catch

{

saveFileDialog1.Filter=

"纯文本(*.txt)|*.txt|10

信管一班陈勇

c#源文件

(*.cs)|*.cs";

saveFileDialog1.OverwritePrompt=

true;

if(richTextBox1.Text==

"")

{

MessageBox.Show("请输入要保存的内容

",

"提示

");

}

else

{

if

(saveFileDialog1.ShowDialog()==

DialogResult

.OK)

{

 

false

 

StreamWriterc=newStreamWriter(saveFileDialog1.FileName,

Encoding.GetEncoding("gb2312"));//gb2312国标,中国自己的

name=saveFileDialog1.FileName;

stringd=richTextBox1.Text;//将文本中的字符串赋值给局部变

c.Write(d);

//将字符串重载

 

}

}

}

}

private

void

另存为aToolStripMenuItem_Click(

objectsender,

EventArgse)//类

似保存

{

if(richTextBox1.Modified==

true)

{

DialogResultclose=MessageBox.Show("是否保存已修改的内容

MessageBoxButtons.YesNoCancel,MessageBoxIcon.Warning);

switch(close)

"提示",

{

caseDialogResult.Yes:

this.保存ToolStripMenuItem_Click(sender,e);

try//使用语句处理异常情况

{

StreamWritersww=newStreamWriter(name,false,

Encoding.GetEncoding("gb2312"));

stringdata=richTextBox1.Text;

sww.Write(data);

sww.Close();

}

catch

{

saveFileDialog1.Filter="文件t|*.txt";

saveFileDialog1.OverwritePrompt=true;

if(saveFileDialog1.ShowDialog()==DialogResult

 

.OK)

{

 

StreamWriter

StreamWritersww=new

(saveFileDialog1.FileName,false,Encoding.GetEncoding("gb2312"));

name=saveFileDialog1.FileName;

stringdata=richTextBox1.Text;

sww.Write(data);

sww.Close();

}

}

break;

caseDialogResult.No:

richTextBox1.Clear();

break;

caseDialogResult.Cancel:

break;

}

}

}

 

private

 

void

 

撤销ToolStripMenuItem_Click(

 

objectsender,

 

EventArgse)

{

richTextBox1.Undo();

//撤销

}

private

voidrichTextBox1_TextChanged(

object

sender,

EventArgse)

{

if(richTextBox1==

null)

{

剪切DToolStripMenuItem.Enabled=

false;

}

else

{

剪切DToolStripMenuItem.Enabled=

true;

}

if(richTextBox1.Text==

null)

{

撤销ToolStripMenuItem.Enabled=

false;//如果richTextBox1

为空则无法执

}

else

{

撤销ToolStripMenuItem.Enabled=

true;

}

if(richTextBox1.Text==

null)//复制

{

复制ToolStripMenuItem.Enabled=

false;

}

else

{

复制ToolStripMenuItem.Enabled=

true;

}

if(richTextBox1.Text==

null)//粘贴

{

粘贴ToolStripMenuItem.Enabled=

false;

}

else

{

粘贴ToolStripMenuItem.Enabled=

true;

}

if(richTextBox1.Text==

null)

{

删除ToolStripMenuItem.Enabled=

false;

}

else

{

删除ToolStripMenuItem.Enabled=true;

 

}

if(richTextBox1.Text==

null)

{

查找替换ToolStripMenuItem.Enabled=

false;

}

else

{

查找替换ToolStripMenuItem.Enabled=

true;

}

 

this

this.toolStripStatusLabel5.Text="当前文档字数合计为

.richTextBox1.Text.Length;

this.toolStripStatusLabel6.Text=datetime.now.Tosting();

"+

}

private

void

剪?

切DToolStripMenuItem_Click(

objectsender,

EventArgse)

{

richTextBox1.Cut();

//剪切

}

private

void

复制ToolStripMenuItem_Click(

objectsender,

EventArgse)

{

richTextBox1.Copy();

//复制

}

private

void

粘贴ToolStripMenuItem_Click(

objectsender,

EventArgse)

{

richTextBox1.Paste();

//粘贴

}

private

void

删除ToolStripMenuItem_Click(

objectsender,

EventArgse)

{

richTextBox1.SelectedText=

"";//

删除

}

private

void

撤销ToolStripMenuItem1_Click(

objectsender,

EventArgse)

{

richTextBox1.Undo();

}

privatevoid全选ToolStripMenuItem1_Click(objectsender,EventArgse)

{

richTextBox1.SelectAll();

}

privatevoid剪切ToolStripMenuItem1_Click(objectsender,EventArgse)

{

richTextBox1.Cut();

}

privatevoid复制ToolStripMenuItem1_Click_1(objectsender,EventArgse)

{

richTextBox1.Copy();

}

privatevoidForm1_FormClosing(objectsender,FormClosingEventArgse)

 

{

}

private

void

saveFileDialog1_FileOk(

objectsender,

CancelEventArgs

e)

{

}

private

void

自动换行ToolStripMenuItem_Click(

object

sender,EventArgse)

{

richTextBox1.WordWrap=

true;

}

private

void

打开ToolStripMenuItem_Click(

object

sender,

EventArgs

e)

{

this

.openFileDialog1.Title=

"打开";

this

.openFileDialog1.Filter=

"文本文件t(*.txt;*.rtf)|*.txt;*.rtf|

所有文

件t(*.*)|*.*"

;

this

.openFileDialog1.FilterIndex=1;

this

.openFileDialog1.InitialDirectory=

"桌面";

this

.openFileDialog1.ShowReadOnly=

true

;

this

.openFileDialog1.ReadOnlyChecked=

false

;

this

.openFileDialog1.FileName=

"";

if

this

.openFileDialog1.ShowDialog()==

DialogResult

.OK)

{

this

.Text=this.openFileDialog1.FileName;

StreamReaderstr=

newStreamReader

this

.openFileDialog1.FileName,

Encoding.Default);

this

.richTextBox1.Text=str.ReadToEnd();

str.Close();

}

}

privatevoid页面属性ToolStripMenuItem_Click(objectsender,EventArgse)

{

printDialog1.Document=printDocument1;

printDialog1.ShowDialog();

}

privatevoid粘贴ToolStripMenuItem1_Click(objectsender,EventArgse)

{

richTextBox1.Paste();

}

privatevoid复制ToolStripMenuItem1_Click(objectsender,EventArgse)

{

richTextBox1.Copy();

}

privatevoid粘贴ToolStripMenuItem1_Click_1(objectsender,EventArgse)

{

richTextBox1.Paste();

}

privat

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

当前位置:首页 > 小学教育 > 语文

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2