[互联网]记事本的设计

上传人:tia****nde 文档编号:70891006 上传时间:2019-01-18 格式:PPT 页数:39 大小:1.11MB
返回 下载 相关 举报
[互联网]记事本的设计_第1页
第1页 / 共39页
[互联网]记事本的设计_第2页
第2页 / 共39页
[互联网]记事本的设计_第3页
第3页 / 共39页
[互联网]记事本的设计_第4页
第4页 / 共39页
[互联网]记事本的设计_第5页
第5页 / 共39页
点击查看更多>>
资源描述

《[互联网]记事本的设计》由会员分享,可在线阅读,更多相关《[互联网]记事本的设计(39页珍藏版)》请在金锄头文库上搜索。

1、C#课程设计,记事本的设计,简单记事本的介绍,“简单记事本”的界面如图1所示。包括菜单栏、工具栏、状态栏以及文本编辑区。功能包括打开文本文件(后缀名为.txt),以及对文本文件的编写、修改、查找和替换功能。,图1 简单记事本界面,其中“查找”和“替换”的对话框分别如图2和图3所示。,图2 “查找”对话框 图3 “替换”对话框,所要掌握的主要知识点: (1)项目的创建。 (2)Windows窗体的创建和使用。 (3)几种对话框的使用。 (4)“ToolStrip”、“ContextMenuStrip”等控件的使用。 (5)鼠标事件以及键盘事件。 (6)窗体的调用。,1 项目的创建,“简单记事本”

2、应用程序包括3个窗体,分别为“记事本窗体(Form1)”、“查找窗体(Form2)”和“替换窗体(Form3)”。,2 记事本窗体的设计,记事本窗体(Form1)中包括菜单栏、工具栏、文本编辑区和状态栏。 1. 添加控件 从工具箱中拖放一些控件和组件到窗体中。,2 记事本窗体的设计,2. 窗体和控件属性的设置 (1)menuStrip1属性设置。选中“menuStrip1”,在“请在此处键入”处输入“文件(&F)”,则添加了“文件”菜单项,“&F”是用来定义该菜单项的助记符。按照如图4所示分别添加其他菜单项及子菜单项。,图4(a)文件菜单及子菜单 图4(b) 编辑菜单及子菜单 图4(c) 格式

3、菜单及子菜单,图4(d) 查看菜单及子菜单 图4(e) 帮助菜单及子菜单,2 记事本窗体的设计,打开文件菜单中的子菜单项的“新建”属性窗口,设置与菜单项关联的快捷键“ShortcutKeys”属性,如图5所示。其他子菜单的快捷键的设置类似。 在“格式”菜单的子菜单的“自动换行”属性窗口中,设置“Checked”属性值为“True”。同样,在“查看”菜单的子菜单的“状态栏”属性窗口中,设置“Checked”属性值为“True”。,图5 设置快捷键,2 记事本窗体的设计,(2)toolStrip1属性设置。直接单击“ ”图标添加“Button”,在新添加的“Button”属性窗口中设置“Text”

4、属性值为“新建”,选中“Image”属性,单击“ ”按钮,在弹出的“选择资源”对话框中单击“导入”按钮,如图6所示,单击“确定”按钮完成“Image”属性设置。,添加Button 图6 导入资源,2 记事本窗体的设计,也可以在窗体的工具栏中单击右键,然后在弹出的菜单中选择【插入标准项】菜单项,这时可以看到工具栏中添加了一些标准的工具。 (3)richTextBox1属性设置。将richTextBox1调整到适当的大小,Anchor属性值设置为“Top, Bottom, Left, Right”,表示绑定到容器的边缘。 (4)statuStrip1属性设置。将其Dock属性设为“Bottom”再

5、将Anchor属性设为“Bottom,Left,Right”。单击Item属性右边的按钮,打开【项集合编辑器】对话框。,下拉列表中保留默认的选择“StatusLabel”,然后单击【添加】按钮,依次添加2个StatusLabel,并分别为“toolStripStatusLabel1”和“toolStripStatusLabel2”,再将toolStripStatusLabel1的Text属性设为“就绪”, toolStripStatusLabel2的Text属性设为“显示日期、时间”。,2 记事本窗体的设计,(5)contextMenuStrip1属性设置。选中“contextMenuStri

6、p1”,在“请在此处键入”处输入“撤销(&U)”,则添加了“撤销”快捷菜单项,按照同样的方法添加其他快捷菜单项,如图7所示。,图7 设计后的快捷菜单,2 记事本窗体的设计,(1)添加菜单事件。在Form1的设计视图中依次展开并双击menuStrip1的各个子菜单项,系统自动添加了相应的“Click”事件及事件处理方法。 (2)为工具栏添加事件。打开“新建”图标为“ ”的属性窗口,单击事件图标“ ”,为“Click”事件选择方法“新建ToolStripMenuItem_Click”。按照同样的方法分别为其他工具栏按钮添加“Click”事件并选择相应的方法。 (3)为快捷菜单用同样的方法添加“Cl

7、ick”事件并选择相应的方法。,2 记事本窗体的设计,(4)为文本编辑区添加事件及代码。在richTextBox1的属性窗口中,单击事件图标 “ ”,分别双击“KeyUp”、“MouseUp”和“TextChanged”,系统自动添加了相应的事件执行方法。这些事件调用同一个方法“locate()”用于计算当前鼠标位置并显示在状态栏中。,2 记事本窗体的设计,因为涉及文件的读取和操作,需要在“Form1.cs”中添加命名空间“Using System.IO”。 在System.Text命名空间中,有一个Encoding类,用于表示字符编码。对文件进行操作时,常用的编码方式有 Encoding.D

8、efault 表示操作系统的当前ANSI编码 Encoding.Unicode Unicode编码 Encoding.UTF8 UTF8编码 在System.IO命名空间中,提供了多种类用于进行数据文件和数据流的读写操作。,System.IO命名空间中文件操作类: (1)File (2)FileInfo 相同点:都能完成对文件的复制、移动、重命名、创建、打开、删除和追加到文件操作。 不同点:FileInfo类提供实例化后的属性、方法 File 只提供静态方法 Create(String) :在指定路径中创建或覆盖文件。,FileStream 类: 公开以文件为主的 Stream,既支持同步读写

9、操作,也支持异步读写操作。 public void Write( byte array, int offset, int count ) array 类型:array() 包含要写入该流的数据的缓冲区。 offset 类型:System. Int32 array 中的从零开始的字节偏移量,从此处开始将字节复制到当前流。 count 类型:System. Int32 要写入当前流的字节数。 Encoding 类成员GetBytes(String) :将指定的 String 中的所有字符编码为一个字节序列。 Flush :清除该流的所有缓冲区会使得所有缓冲的数据都将写入到文件系统。,2 记事本窗体

10、的设计,文件的读写: StreamReader类提供了利用流来按行读取文本文件信息的方法。 初始化: StreamReader sr = null; StreamReader(String, Encoding) :用指定的字符编码,为指定的文件名初始化 StreamReader 类的一个新实例。 sr = new StreamReader(openfilepath, Encoding.Default); Close: 关闭 StreamReader 对象和基础流,并释放与读取器关联的所有系统资源。 Dispose(): 释放由此对象使用的所有资源。 ReadToEnd :从流的当前位置到末尾读

11、取流。,2 记事本窗体的设计,StreamWriter类提供了按行写入文本信息的方法。 StreamWriter(String, Boolean, Encoding) :使用指定编码和默认缓冲区大小,为指定路径上的指定文件初始化 StreamWriter 类的新实例。如果该文件存在,则可以将其覆盖或向其追加。如果该文件不存在,则此构造函数将创建一个新文件。 sw = new StreamWriter(openfilepath, false, Encoding.Default);,RichTextBox 类成员: Copy:将文本控件的当前选定内容复制到Clipboard。 Cut 从文本编辑控

12、件中删除当前选定内容,并将其复制到 Clipboard。 Paste 将剪贴板的内容粘贴到文本编辑控件中的当前选定内容上。 Redo 撤消最新的撤消命令。换句话说,重做撤消堆栈上的最新撤消单元。 SelectAll 选择文本编辑控件的全部内容。 Undo 撤消最新的撤消命令。换句话说,撤消位于撤消堆栈上的最新撤消单元。 Clear 清除属性的本地值。,RichTextBox 类属性: SelectionLength SelectedText SelectionColor SelectionStart,Timer的属性设置 在状态栏中显示时钟,需要使用一个Timer控件来实现。Timer控件的N

13、ame属性设为“timer1”,Enabled属性设为“True”,Interval属性设为“1000”,表示1秒种触发一次Tick事件,即1秒钟改变一次时钟。,3 查找窗体的设计,查找窗体(Form2)用于查找文本中某个字符串,包含区分大小写查找和向上、向下查找功能,如图2所示。当前查找的字符颜色设置为红色,查找后的字符颜色设置为蓝色。 1. 添加控件 从工具箱中拖放1个“Label”、1个“TextBox”、1个“GroupBox”、2个“RadioButton”、2个“Button”和1个“CheckBox”控件到窗体中。其中2个“RadioButton”控件放在“GroupBox”控件

14、中。,3 查找窗体的设计,2. 窗体和控件属性的设置 将窗体Form2调整到适当的大小,打开此窗体的属性窗口,“MaximizeBox”、“MinimizeBox”和“ShowIcon”属性值都设置为“False”,分别表示“取消最大化框”、“取消最小化框”和“窗体的标题栏中取消图标显示”。“Text”属性值设置为“查找”。,3 查找窗体的设计,private void 查找ToolStripMenuItem_Click (object sender, EventArgs e) Form2 ff = new Form2(); ff.richtextbox = richTextBox1; ff.

15、ShowDialog(); /显示有模式窗体 有模式窗体就是在打开窗体后,一直保持输入焦点,除非窗体被关闭,否则不能切换到打开有模式窗体的窗体,使用“ShowDialog”方法打开有模式窗体。,IndexOf(String, StringComparison) 报告指定的字符串在当前 String 对象中的第一个匹配项的索引。一个参数指定要用于指定字符串的搜索类型。 StringComparison 枚举值: CurrentCulture 使用区域敏感排序规则和当前区域比较字符串。 CurrentCultureIgnoreCase 使用区域敏感排序规则、当前区域来比较字符串,同时忽略被比较字符

16、串的大小写。 InvariantCulture 使用区域敏感排序规则和固定区域比较字符串。 InvariantCultureIgnoreCase 使用区域敏感排序规则、固定区域来比较字符串,同时忽略被比较字符串的大小写。 Ordinal 使用序号排序规则比较字符串。 OrdinalIgnoreCase 使用序号排序规则并忽略被比较字符串的大小写,对字符串进行比较。,4 替换窗体的设计,替换窗体(Form3)用于查找文本中某个字符串,替换或者全部替换某个字符串,如图3所示。当前查找的字符颜色设置为红色,查找后的字符颜色设置为蓝色。 1. 添加控件 从工具箱中拖放2个“Label”、2个“TextBox”和4个“Button”控件到窗体中。 2. 窗体和控件属性的设置 将窗体Form3调整到适当的大小,打开此窗体的属性窗口,“MaximizeBox”、“MinimizeBox”和“ShowIcon”属性值都设置为“False”。“Text”属性值设置为“替

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号