好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

C#记事本实训报告.pdf

21页
  • 卖家[上传人]:飞***
  • 文档编号:50959408
  • 上传时间:2018-08-11
  • 文档格式:PDF
  • 文档大小:207.78KB
  • / 21 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1 C# 程序课程设计(记事本程序设计)姓名:指导教师:专业名称:所在系部:二○年 月2 目录C# 程序课程设计1第一章记事本的概述41.1 记事本的简介41.2 记事本实现的主要功能41.3 系统的开发环境5第二章系统概要设计62.1 记事本系统的整体构架图62.2 记事本系统的主要模块6 2.2.1文件菜单项72.2.2编辑菜单项72.2.3格式菜单项7 2.2.4查看菜单项82.2.5帮助菜单项8第三章记事本详细设计93.1 文件菜单项的设计思路10 3.1.1关于文件下的子菜单中主要代码如下103.1.2关于编辑菜单项下子菜单的功能实现,主要涉及一些简单功能实现:123.1.3其中关于上面一些事件处理中需要我们去引用的代码(方法调用及方法内的对象 实例化):133.1.4页面设置及打印预览的主要代码:153.2 编辑菜单项查找替换的代码17实训总结与体会20参考文献213 引 言C#语言是一种完全面向对象的基于.NET 的编程语言,已先后被欧洲计算机制造商协会和国际标准化组织批准为高级语言开发标准随着.NET 技术的普及,C#语言已成为开发基于 .NET 的企业及应用程序的首选语言。

      C#是 一 种 现 代 的 面 向 对 象 语 言 它 使 程 序 员 快 速 便 捷 地 创 建 基 于Microsoft .NET 平台的解决方案 这种框架使 C#组件可以方便地转化为XML 网络服务,从而使任何平台的应用程序都可以通过Internet 调用它C#增强了开发者的效率,同时也致力于消除编程中可能导致严重结果的错误C#使 C/C++程序员可以快速进行网络开发,同时也保持了开发者所需要的强大性和灵活性本次实训基于在 C#的学习的基础上,运用C#的知识来实训课题记事本运用工具: Visual Studio 2005 4 第一章记事本的概述1.1 记事本的简介记事本,用来记录各类事情的小册子在windows 操作系统中是一个简单的文本编辑器自从 1985 年发布的Windows 1.0开始,所有的Microsoft Windows 版本都内置这个软件记事本只能处理纯文本文件, 但是, 由于多种格式源代码都是纯文本的,所以记事本也就成为了使用最多的源代码编辑器它只具备最基本的编辑功能,所以体积小巧,启动快,占用内存低,容易使用增强记事本就是在记事本原有的功能下添加一些别的功能,同时又不破坏它上述的优点。

      给我们在不使用Word 的情况下编辑较小的纯文本时提供更多的帮助和选择,从而达到丰富和美化文本的目的记事本另一项不可取代的功能是:可以保存无格式文件 你可以把记事本编辑的文件保存为: “ .html ”, “ .java ”, “ .asp ”等等任意格式 这使得 “ 记事本” 又找到了一个新的用途:作为程序语言的编辑器翻开任何一本介绍一门编程语言的入门教材,里面都会建议学生在记事本中编写源程序1.2 记事本实现的主要功能1.文件操作:包括文件的新建、打开、保存、另存为、页面设置、打印及退出通过主窗体文件菜单中的新建、 打开、 保存及退出菜单项实现上述功能执行操作前, 应检查当前文本框中内容是否已经保存,若还没有保存, 弹出消息提示存盘2.编辑功能:包括剪切、复制、粘贴、删除、全选、插入时间和日期、自动换行上述功能通过主窗体编辑菜单中的剪切、复制、粘贴、删除、全选、插入时间和日期、工具栏、自动换行等菜单项来实现其中,剪切、复制、粘贴、删除等操作是利用剪贴板对象来完成的,没有选中文本时,剪切和复制命令不可用;同样若剪贴板中没有内容时, 粘贴命令也应不可用 插入时间和日期菜单项是将5 系统的时间和日期插入到光标所在的位置。

      选中自动换行菜单项将使文本框具有自动换行功能3.字体设置:包含字体、字体颜色及大小的设置主窗体字体菜单中包含字体、 字体颜色及字体大小菜单项 要求字体大小的选择使用菜单数组另外,与Windows 的“记事本 “不同,要求主窗体上增加一个工具栏,以方便字体、字号的选择以及粗体、斜体、下划线的设置4.查找替换功能主窗体查找菜单中包含查找、替换菜单项单击该菜单项弹出查找/替换对话框完成查找替换功能注意:查找时,窗体中部分控件可以隐藏起来,只显示与查找有关的控件;而执行替换操作时,再让它们显示出来1.3 系统的开发环境Windows98/2000/ 2003/ XP 操作系统;Visual Studio 2005 一台 PC 机6 第二章系统概要设计2.1 记事本系统的整体构架图主要介绍系统要实现的功能,搭好设计的总体框架,使我们对要开发的系统有一个系统、全面、确切的认识2.2 记事本系统的主要模块按照记事本上显示的菜单项, 大致可分为 5 个大的功能模块, 分别为文件功能模块,编辑功能模块,格式功能模块,查看功能模块以及帮助功能模块每个功能模块下又可以分为很多的子功能模块,如:文件功能模块下可以分为新建,记事本文件编辑查看新建打开保存另存为页面设置打印预览打印退出撤消恢复剪切复制粘帖删除查找替换全选格式帮助工具栏状态栏自动对齐字体颜色关于记事本7 打开,保存等子菜单。

      2.2.1 文件菜单项文件菜单项下包括新建,打开,保存,另存为,打印,页面设置以及退出子菜单项2.2.2 编辑菜单项编辑菜单下包括撤销,剪切,删除,复制,恢复,粘贴,清空,全选,查找替换以及时间 / 日期子菜单2.2.3 格式菜单项格式菜单项下包括字体,颜色,自动换行,对齐方式,前景色以及背景色子菜单8 2.2.4 查看菜单项查看菜单项的子菜单是状态栏2.2.5 帮助菜单项帮助菜单项下包括查看帮助,关于记事本9 第三章记事本详细设计文件(F)菜单用于完成新建(新建一个空白文档) 、打开(打开一个已经存在的文档)、保存(实现保存记事本的功能) 、另存为(实现文件另存为的功能) 、打印(在文件需要打印时,可用此功能) 、页面设置(在文件打印时可使用此功能进行页面设置)、退出(退出记事本程序)右键弹出式菜单用于完成撤销(撤销最近一次对文本框的编辑操作) 、复制(复制选中的文本内容) 、剪切(剪切选中的文本内容)、粘贴(粘贴剪贴板中的内容) 、全选(选中多格式文本框中所有的内容) 、删除(删除选中的文本内容)详细的属性设置如表3表 新建菜单项及其子菜单和弹出式菜单项的属性设置菜单项属性属性值备注文件Name Mnu 文件默认为:文件ToolStripMenuItem Text 编辑( MyInit(); } 保存机另存为功能实现:private void SaveFile() { WriteFile(); notSaved = false; } private void WriteFile() { StreamWriter wr = new StreamWriter(fileName); wr.WriteLine(txtMain.Text); wr.Flush(); wr.Close(); } private void SaveAsFile() { 11 if (sfdlgTxt.ShowDialog() == DialogResult.OK) { fileName = sfdlgTxt.FileName; SaveFile(); ChangeCaption(); } } 保存及另存为的事件处理代码:private void tsmiSave_Click(object sender, EventArgs e) { if (fileName == ““) SaveAsFile(); else SaveFile(); } private void tsmiSaveAs_Click(object sender, EventArgs e) { SaveAsFile(); } 打开文件的事件处理代码:private void tsmiOpen_Click(object sender, EventArgs e) { if (CheckStatus()) { if (ofdlgTxt.ShowDialog() != DialogResult.Cancel) { fileName = ofdlgTxt.FileName; ReadFile(); ChangeCaption(); } } } private void ReadFile() { StreamReader wr; wr = new StreamReader(fileName); txtMain.Text = wr.ReadToEnd(); } 退出功能的实现:private void tsmiExit_Click(object sender, EventArgs e) { if (CheckStatus()) 12 this.Close(); } 3.1.2 关于编辑菜单项下子菜单的功能实现,主要涉及一些简单功能实现:撤销:private void tsmiUndo_Click(object sender, EventArgs e) { if (txtMain.CanUndo) { txtMain.Undo(); notSaved = true; } } 剪切: private void tsmiCut_Click(object sender, EventArgs e) { if (txtMain.SelectionLength > 0) { txtMain.Cut(); notSaved = true; } } 复制: private void tsmiCopy_Click(object sender, EventArgs e) { txtMain.Copy(); } 粘贴: private void tsmiPaste_Click(object sender, EventArgs e) { txtMain.Paste(); notSaved = true; } 删除:private void tsmiDele_Click(object sender, EventArgs e) { txtMain.SelectedText = ““; notSaved = true; } 13 3.1.3 其中关于上面一些事件处理中需要我们去引用的代码(方法调用及方法内的对象实例化):private void MyInit() { fileName = ““; divideRow = true; currentPrintLine = 0; ChangeCaption(); SetMenuStatus(); txtMain.SelectionStart = 0; txtMain.SelectionLength = 0; notSaved = false; } private void ChangeCaption() { string sfileName; sfileName = fileName; if (sfileName == ““) sfileName = “无标题 “; this.Text = CatTitle(sfileName, programName); } private string CatTitle(string strA, string strB) { if (strA.Length > 255) strA = strA.Substring(0, 3) + “.“; return (strA + “-“ + strB); } private void SetWarpStatBar(bool AValue) { tsmiWrap.Checked = AValue; tsmiStatus.Enabled = !tsmiWrap.Checked; ssrMain.Visible = tsmiStatus.Enabled } private void SetMenuStatus() { 。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.