目录
1 采用技术. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1
1 .1 .visual studio 2010编辑环境. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1
1 .2.C#的窗体编程. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1
2 选题说明. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2
3 总体说明. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3
3.1程序的基本结构. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3
3.2程序的主要技术. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3
4详细说明. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4
4.1界面设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4
5遇到的问题和解决方法. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13
5.1 未考虑到生成文档窗体在主窗体中的显示. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13
5.2 不知到什么属性被修改导致主窗体关闭失效. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13
5.3 未考虑到文档关闭时文档是否保存. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13
6程序详细设计代码. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .14
6.1 主窗体结构和属性值. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .14
6.2 工具栏实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .17
6.3 打开、保存文件的代码实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .18
6.4 退出时的代码. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .19
6.5 编辑栏功能的实现剪切、复制等. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21
6.6 字体和颜色部分的实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21
6.7 在状态栏实时显示光标的位置. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23
6.8 查找替换页的实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .24
6.9 打印功能实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .28
参考文献. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .34
摘要
C#文本编辑器是一个关于文本编辑器的小程序运用一些简单的记事本的基本操作功能来实现的。该程序利用C#程序编写在Visual Studio 2010的环境下进行调试运行的能够对文本进行简单编辑处理如剪切、复制等。
对于该程序开发必须达到以下要求
1 、熟悉.NET开发环境能够使用C#语言在.NET平台上独立设计、开发WINDOWS应用程序。
2、掌握C#语言的异常处理技术能够使用.NET各种调试方法调试代码掌握帮助的使用方法。
3、掌握常用控件以及控件的常用属性的使用方法。
4、界面要做到简洁易懂具有人性化等特点。
5、程序没有在使用过程中不存在任何的问题。
6、通过使用C#编写程序可以发现能完成任务能够编写出文本编辑器应有 的 基 础 功 能 。
引言
文本编辑器是常用的简便工具。本设计完成的功能类似于Windows操作系统的记事本工具又添加了多文档接口支持以及更丰富的字体样式控制。
利用C#完成文本编辑器的开发实现以下功能
文档读写打开文件包括普通文本文件和富文本文件
保存文件包括另存为
文档编辑包括输入、修改、复制、粘贴、重做、撤销、查找、替换、设置字体样式等
打印及打印页面设置
配置功能完成状态栏的显示设置和文件的定时自动保存设置
操作系统和软件开发包往往都提供文本编辑器用以修改配置文件和程序的源代码。市场上出现的和用户所使用的文本编辑器种类繁多功能也是各式各样其中有相当一部分是很优秀的。但是面向底层用户的的操作简单的界面友好的集文本操作、编辑操作、格式操作于一体的编辑器并不多见。 目前市面上现有的如office中的word还有WPS等大众文本编辑器虽然功能也十分齐全但是本身往往就是数百兆甚至几个G占用资源非常大而且对于电脑本身的性能要求也比较高甚至有部分专业的文本编辑器需要付费使用。
本次毕业设计所研究的就是编写一个功能完整占用资源较少的操作简单适用于大众的文本编辑器。该编辑器要求可以实现新建、保存、打开等基本文件操作还要求具有复制、粘贴、剪切、撤消等基本文本编辑操作以及字体选择、颜色设置、格式设置等格式操作。同时该文本编辑器号要求具备丰富的快捷方式和热键以方便用户进行操作降低操作难度提高工作效率。同时由于文本编辑器要求占用资源少所以本身需要启动的进程必须较少以节约系统资源。而满足上述条件的文本编辑器目前市面上尚未出现因此本次课程设计研究十分具 备 可 行 性 。
1 采用技术
1 .1 .visual studio 2010编辑环境
Visual Studio是微软公司推出的开发环境。是目前最流行的Windows平台应用程序开发环境。 目 前已经开发到 10.0 版。
Visual Studio可以用来创建Windows平台下的Windows应用程序和网络应用程序也可以用来创建网络服务、智能设备应用程序和Offi c e插件。
Visual Studio是一套完整的开发工具集用于生成ASP.NET Web应用程序、XMLWeb Services、桌面应用程序和移动应用程序。Visual Basic、 VisualC++、 Visual C#和Visual J#全都使用相同的集成开发环境(IDE) 利用此IDE可以共享工具且有助于创建混合语言解决方案。另外这些语言利用了 .NET Framework的功能通过此框架可使用简化ASP Web应用程序和XML Web Services开发的关键技术。
1 .2.C#的窗体编程
Windows窗体是用于Microsoft Windows应用程序开发的、基于.NETFramework的新平台。此框架提供一个有条理的、面向对象的、可扩展的类集使您能够开发功能丰富的Windows应用程序。另外Windows窗体可作为多层分布式解决方案中的本地用户界面。
窗体是一种文档可以用来收集信息。它包括两部分一部分是由窗体设计者输入的填写窗体的人无法更改的文字或图形。窗体设计者可以插入希望得到回答的问题、选项列表、信息表格等。另一部分是由窗体填写者输入的用于从填写窗体者处收集信息并进行整理的空白区域。窗体设计者可以在文档中插入窗体域或 ActiveX控件 为窗体填写者提供用于收集数据的位置。
2 选题说明
随着科技的发展人们对精神生活要求的越来越高纸质的手动式的书写方式已经不是能够代表新世纪的生活需要了所以现在各种不同功能的文本编辑器已经悄悄走进我们的生活和学习中像简单的就有记事本。 但是一个简单的文本编辑器也是很重要的是基础。所以在结合自己的一个学期的很认真的学习c#后决定自己编译一个类似与记事本的但功能比记事本强大的文本编辑器。
3 总体说明
个简单的toolstripe式的图片按钮分别是新建和保存。当点击新建的时候会弹出我们将要编辑的文档文本窗口这是我们编写文字的地方。书写完毕后要先确认是否保存此文件夹这样就不会发生自己所编辑的容会丢失。
3.2程序的主要技术
1 编写要先新建编写之后要有保存功能
2还可以设置文字的字体字形和字体的颜色
3实现文字替换与查找功能
4可以进行打印、打印预览
5 状 态 栏 能 够 实 时 反 映 输 入 状 态
图4-1 编辑器用户界面
运行程序新建文档。如图4-2所示。
图4-2新建文本文档
今天早上相比很多网友和一样收到来自Linode的庆祝18周年的邮件信息。和往年一样,他们会回顾在过去一年中的成绩,以及在未来准备改进的地方。虽然目前Linode商家没有提供以前JP1优化线路的机房,但是人家一直跟随自己的脚步在走,确实在云服务器市场上有自己的立足之地。我们看看过去一年中Linode的成就:第一、承诺投入 100,000 美元来帮助具有社会意识的非营利组织,促进有价值的革新。第二、发...
DediPath 商家成立时间也不过三五年,商家提供的云服务器产品有包括KVM和OPENVZ架构的VPS主机。翻看前面的文章有几次提到这个商家其中机房还是比较多的。其实对于OPENVZ架构的VPS主机以前我们是遇到比较多,只不过这几年很多商家都陆续的全部用KVM和XEN架构替代。这次DediPath商家有基于OPENVZ架构提供低价的VPS主机。这次四折的促销活动不包括512MB内存方案。第一、D...
最近上洛杉矶机房联通CUVIP线路主机的商家越来越多了,HostKvm也发来了新节点上线的邮件,适用全场8折优惠码,基于KVM架构,优惠后最低月付5.2美元起。HostKvm是一家成立于2013年的国人主机商,提供基于KVM架构的VPS主机,可选数据中心包括日本、新加坡、韩国、美国、中国香港等多个地区机房,君选择国内直连或优化线路,延迟较低,适合建站或者远程办公等。以洛杉矶CUVIP线路主机为例,...