目录
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新建文本文档
关于HostDare服务商在之前的文章中有介绍过几次,算是比较老牌的服务商,但是商家背景财力不是特别雄厚,算是比较小众的个人服务商。目前主流提供CKVM和QKVM套餐。前者是电信CN2 GIA,不过库存储备也不是很足,这不九月份发布新的补货库存活动,有提供九折优惠CN2 GIA,以及六五折优惠QKVM普通线路方案。这次活动截止到9月30日,不清楚商家这次库存补货多少。比如 QKVM基础的五个方案都...
腾讯云双十一活动已于今天正式开启了,多重优惠享不停,首购服务器低至0.4折,比如1C2G5M轻量应用服务器仅48元/年起,2C4G8M也仅70元/年起;个人及企业用户还可以一键领取3500-7000元满减券,用于支付新购、续费、升级等各项账单;企业用户还可以以首年1年的价格注册.COM域名。活动页面:https://cloud.tencent.com/act/double11我们分享的信息仍然以秒...
金山云618年中促销活动正在进行中!金山云针对企业级新用户优惠力度比普通个人用户优惠力度要大,所以我们也是推荐企业新用户身份购买金山云企业级云服务器,尽量购买3年配置的,而不是限时秒杀活动中1年的机型。企业级用户购买金山云服务器推荐企业专区:云服务器N3 2核4G云服务器,1-5M带宽,827.64元/3年,性价比高,性能稳定!点击进入:金山云618年中促销活动目前,金山云基础型E1云服务器2核4...