C课程设计说明书记事本.doc

上传人:仙人指路1688 文档编号:2384548 上传时间:2023-02-17 格式:DOC 页数:14 大小:494KB
返回 下载 相关 举报
C课程设计说明书记事本.doc_第1页
第1页 / 共14页
C课程设计说明书记事本.doc_第2页
第2页 / 共14页
C课程设计说明书记事本.doc_第3页
第3页 / 共14页
C课程设计说明书记事本.doc_第4页
第4页 / 共14页
C课程设计说明书记事本.doc_第5页
第5页 / 共14页
点击查看更多>>
资源描述

《C课程设计说明书记事本.doc》由会员分享,可在线阅读,更多相关《C课程设计说明书记事本.doc(14页珍藏版)》请在三一办公上搜索。

1、目录一、课程设计的目的与要求2二、题目说明22.1程序开发景.32.2开发工绍.3三、总体设计4四、详细说明44.1 系统实施.4五、遇到的问题和解决法.13六、课程设计总结.14七、参考文献.14一、课程设计的目的与要求 目的: 1、熟悉.NET开发环境,能够使用C#语言在.NET平台上独立设计、开发WINDOWS应用程序。 2、掌握C#语言的异常处理技术,能够使用.NET各种调试方法调试代码,掌握帮助的使用方法。 3、掌握常用控件以及控件的常用属性的使用方法。 要求: 1、程序中应有不少于100300行的自行编写的代码,代码需书写详细注释。 2、软件界面美观大方,操作简洁易用,功能完备可靠

2、。 3. 通过c#课程设计,使学生能将学到的面向对象的程序设计思想用到具体的工作和学习中,加深对类和对象的理解,要求学生能够对现实生活中许多具体事物抽象出类,并掌握继承与派生,基类、虚方法和抽象方法和多态性的概念。二、题目说明 创建支持多文档的记事本,每个子窗口都应包含一个RichTextBox。MDI父窗口具有“格式”菜单,用于子菜单控制活动子窗口中文本的大小、字体和颜色。每个子菜单至少含有三个选项极其快捷键。另外,父菜单还含有“文件”菜单,菜单项有“新建”(创建新的子窗口)、“关闭”(关闭活动子窗体)和“退出”(退出应用程序)。父窗口还有“窗口”菜单显示一系列打开的子窗口及其布局选项。参考

3、界面如:图1主要实现界面2.1程序开发背景 为了满足用户对于记事本的一些基础需求,主要包括“打开”记事本,“新建”、“字体编辑”及保存等功能,所以在老师与自己查阅书籍的情况下,选择编写记事本这一题目。2.2开发工具介绍C#(读做 C sharp,中文译音暂时没有.专业人士一般读C sharp,现在很多非专业一般读C井。 C#是微软公司发布的一种面向对象的、运行于.NET Framework之上的高级程序设计语言。并定于在微软职业开发者论坛(PDC)上登台亮相。C#是微软公司研究员Anders Hejlsberg的最新成果。C#看起来与Java有着惊人的相似;它包括了诸如单一继承、接口、与Jav

4、a几乎同样的语法和编译成中间代码再运行的过程。 但是C#与Java有着明显的不同,它借鉴了Delphi的一个特点,与COM(组件对象模型)是直接集成的,而且它是微软公司.NET windows网络框架的主角。三、总体设计总体设计思路主要是为了实现用户打开记事本时,通过新建新的文本文档,来记事。用户可以执行的操作有,录入文本后,对文本的字体、颜色、格式等进行编辑,同时还可以进行撤消、剪切、粘贴、全选等操作,是用户方便使用。待文字及其格式做好后,用户可以保存,或者另存为到自己想要的位置。此外还可以进行页面设置与打印等功能,方便用户打印急需的文件。四、详细说明用户可以在记事本里通过新建、编辑、保存等

5、功能实现正常记事本的功能。还可以通过格式里面的字体、颜色等来编辑文字。同时编辑里面的撤销、剪切、粘贴等功能也从不同层面上满足用户的一定需求。通过程序所要实现的功能可以看出,该程序中有文件、格式等主要对象,所以我们可以通过定义生成子窗体、字体窗体、颜色窗体等来实现记事本文字的编辑部分,还要定义类,完成窗体间的转换。4.1 系统实施1、文件-新建功能简介:通过点击文件下的新建功能,可以弹出多个文本框,方便用实现记事功能。界面截图如下:图2新建实现效果 关键代码如下:/通过“新建”菜单项添加子窗口 private void 新建ToolStripMenuItem_Click(object sende

6、r, EventArgs e) /创建子窗体 记事本 f = new 记事本(); f.MdiParent = this; count+; f.Text = 新建文本 + count; f.Show(); 2、文件-另存为 功能简介:通过点击文件下的另存为功能,可以弹出窗口,给出用户可以保存文件的位置,方便用户实现保存文本不丢失的功能。 界面截图如下:图3另存为实现效果关键代码如下: private void 另存为ToolStripMenuItem_Click(object sender, EventArgs e) /实现另存为功能 this.saveFileDialog1.Filter =

7、 txt files(*.txt)|*.txt|rdf files(*.rdf)|*.rdf|all files(*.*)|*.*; this.saveFileDialog1.FilterIndex = 1; if (this.saveFileDialog1.ShowDialog() = DialogResult.OK) filename = this.saveFileDialog1.FileName; try richTextBox1.LoadFile(filename,RichTextBoxStreamType.PlainText); catch if (filename != ) ric

8、hTextBox1.SaveFile(filename,RichTextBoxStreamType.PlainText); 3、文件-页面设置 功能简介:在新建文本后,通过点击文件下的页面设置功能,会弹出页面设置对话框,方便用户对文本对话框的设置。 界面截图如下:图4页面设置实现效果 关键代码如下: private void 页面设置ToolStripMenuItem_Click(object sender, EventArgs e) /创建页面设置对话框 PageSetupDialog my = new PageSetupDialog(); my.Document = printDocume

9、nt1; try my.ShowDialog(); catch 4、文件-打印 功能简介:在输入文字后,通过点击文件下的打印功能,会弹出一个对话框,提醒用户选择打印的相关属性。 界面截图如下:图5 文件打印功能关键代码如下:private void 打印PToolStripMenuItem_Click(object sender, EventArgs e) /创建打印对话框 PrintDialog p = new PrintDialog(); p.Document = printDocument1; if (p.ShowDialog() = DialogResult.OK) try print

10、Document1.Print(); catch 5、文件-退出功能简介:在用户输入文字途中,若要退出当前窗口,可以点击文件下的退出功能,会弹出一个提示框,提醒用户是否确认退出并保存文档。 界面截图如下:图6退出功能 关键代码如下:private void 退出ToolStripMenuItem_Click(object sender, EventArgs e) if (MessageBox.Show(你确认要退出吗?, 提示, MessageBoxButtons.YesNo, MessageBoxIcon.Question) =DialogResult.Yes) this.Close();

11、6、编辑 功能简介:在用户输入文字时,若有出错或要重复等内容,可以通过编辑来实现。编辑主要有撤消、剪切、复制、删除、全选等功能。界面截图如下:图7编辑所含功能关键代码如下: private void 撤消ToolStripMenuItem_Click(object sender, EventArgs e) /实现撤消功能 if (this.richTextBox1.CanUndo = true) this.richTextBox1.Undo(); this.richTextBox1.ClearUndo(); private void 剪切ToolStripMenuItem_Click(obje

12、ct sender, EventArgs e) /实现剪切功能 int CurPosition = richTextBox1.SelectionStart; Clipboard.SetDataObject(richTextBox1.SelectedText); richTextBox1.Text = richTextBox1.Text.Substring(0, CurPosition)+ richTextBox1.Text.Substring(CurPosition+richTextBox1.SelectedText.Length); richTextBox1.SelectionStart =

13、 CurPosition; private void 复制ToolStripMenuItem_Click(object sender, EventArgs e) /实现复制功能 Clipboard.SetDataObject(richTextBox1.SelectedText); private void 粘贴ToolStripMenuItem_Click(object sender, EventArgs e) /实现粘贴功能 IDataObject idata = Clipboard.GetDataObject(); if (idata.GetDataPresent(DataFormats.

14、Text) string ClipBoardStr = (string)idata.GetData(DataFormats.Text); int CurPosition = richTextBox1.SelectionStart; richTextBox1.Text = richTextBox1.Text.Substring(0, CurPosition) + ClipBoardStr + richTextBox1.Text.Substring(CurPosition); richTextBox1.SelectionStart = CurPosition + ClipBoardStr.Leng

15、th; private void 删除ToolStripMenuItem_Click(object sender, EventArgs e) /实现删除功能 int CurPosition = richTextBox1.SelectionStart;待添加的隐藏文字内容1 Clipboard.SetDataObject(richTextBox1.SelectedText); richTextBox1.Text = richTextBox1.Text.Substring(0, CurPosition) + richTextBox1.Text.Substring(CurPosition + ric

16、hTextBox1.SelectedText.Length); / richTextBox1.SelectionStart = CurPosition; private void 全选AToolStripMenuItem_Click(object sender, EventArgs e) /全选文本内容 this.richTextBox1.SelectAll(); 7、格式 功能简介:在用户输入文字时,若想对内容进行编辑,可以通过格式菜单来实现。格式菜单主要有自动换行、字体、颜色等功能,用户可以有选择的使用。界面截图如下:图8编辑字体实现效果 关键代码如下: private void 字体To

17、olStripMenuItem_Click(object sender, EventArgs e) /创建字体对话框 fontDialog1.ShowDialog(); richTextBox1.SelectionFont = fontDialog1.Font; 图9编辑颜色实现效果 关键代码如下: private void 颜色YToolStripMenuItem_Click(object sender, EventArgs e) /创建颜色对话框 colorDialog1.ShowDialog(); richTextBox1.SelectionColor = colorDialog1.Co

18、lor; 以上就是该记事本运行可以实现的功能的大部分介绍,希望用户可以方便简单的运用起来。五、遇到的问题和解决方法 1、使子文档出现在MDI程序窗体中时,出现this.Name=”Form1”与this.Text=”MDI程序”的异常,经过仔细检查,原来是先前对代码含义理解有误,应在AddNewfile()方法中创建子窗体的实例f,而我们误创建为父窗体的实例,故出错,正确的写法是:Form2 f=new Form();这样才能与后面的f.MdiParent=this相匹配。 2、在运行过程中,会随机地出现未处理的“System.NullReferenceException”类型的异常出现在未知

19、模块中及信息,未将对象引用设置到对象的实例,或出现未处理的“System.ArgumentException”类型的异常出现在system.windows.forms.dll 中。”这样的两个异常错误,点击中断后则会出现提示“没有可用的当前代码”。 3、据题目要求,需在运行时显示状态栏,这将更好地达多文档的思想。我们采用了加入菜单查看,添加名称为状态的子菜单。双击后在其Click事件中加入它的执行语句:this.statusBar1.Text=this.ActiveMdichile.Text;这样运行后就可以通过点击查看菜单中的状态栏来查看目前处于活动状态的文档是所建立的第几个文档。六、课程设

20、计总结 经过二周的课程设计,使我对Visual C#编程有了更深一层的了解。经过这几天的编程与不断调试,我的努力终于有了成果。我设计的是记事本。这其中得用两个不同地位的菜单对文本进行编辑和操作。整个设计的过程也是我们不断学习的一个过程,我们在运用旧知识的同时也学到了不少新知识,给自己大脑充电的同时也填补了一些相关知识方面的空白。 整个设计的过程中,我们不仅仅只是经历了是失败与成功所带来的启迪,我们还体会到了一种很重要的东西,那就是团体的力量。设计中,我有不懂得地方就请教老师和同学,可以说在大家的帮助下我才得以完整的呈现出我的成果。 这次课程设计让我学到了很多东西。对图形化设计有了更具体的认识,让我们复习了以前学过的知识,也让我们对图形化设计更深刻的理解。团队精神的重要性。总之,这次的设计使我受益颇深。七、参考文献1 李新峰,付志涛,缪勇等编著.图解c# 开发实践.电子工业出版社,2009年出版.2 孙晓飞,冯冠等编著. C#程序设计基础教程与实验指导.清华大学出版社,2008年出版.

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

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号