版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
公开课教案教师班级科目开课时间2010年5月13日第节地点课题名称字符统计课时数6背景分析出版社需要统计书稿的字数,以计算稿酬。学习目标设定设计字符统计界面。文本内容进行字符统计。保存结果和打印预览。学习任务描述File类及ReadAllText,Exists等相关方法DataTable类及Add,Clear,NewRow等相关方法ReportDataSource类MicrosoftVisualBasic组件教学情境创设界面的设计,各个窗体、控件的属性设置添加、移除文件,显示文本文件中的内容,并对文本文件中的字符进行统计保存统计字符结果,创建报表,并生成一个报表教学资源准备建议配置:2.2GHz或速度更快的CPU、1GB或更大容量的RAM、1280x1024显示器、7200RPM或更高转速的硬盘;操作系统:WindowsXP、Vista或2000以上;开发软件:VisualStudio2005/2008中文版(含MSDN)教学过程实施内容方法任务一设计Windows系统资源管理器界面【任务描述】(该任务的内容和目的)新建项目,并在窗体上设计字符统计界面。【任务实施】(完成此任务所需要的主要步骤)1.新建一个Windows项目,在模板中选择“Windows应用程序”,将项目名称设为“ResourceManage”,位置设为“E:\CspharpApp\Examples”(或其它位置),如图4-2所示。图4-2新建项目设置界面2.文件菜单的结构,如表4-1所示。菜单项名称标题新建文件新建NToolStripMenuItem新建(&N)打开文件打开OToolStripMenuItem打开(&O)分隔条toolStripSeparator—保存保存SToolStripMenuItem保存(&S)另存为另存为AToolStripMenuItem另存为(&A)分隔条ToolStripSeparator1—打印打印PToolStripMenuItem打印(&P)打印预览打印预览VToolStripMenuItem打印预览(&V)分隔条ToolStripSeparator2—退出退出XToolStripMenuItem退出(&X)表4-1文件菜单的结构3.编辑菜单的结构,如表4-2示。菜单项名称标题撤消撤消UToolStripMenuItem撤消(&U)重复重复RToolStripMenuItem重复(&R)分隔条toolStripSeparator3—剪切剪切TToolStripMenuIte
剪切(&T)复制复制CToolStripMenuItem复制(&C)粘贴粘贴PToolStripMenuItem粘贴(&P)分隔条ToolStripSeparator4—全选全选AToolStripMenuItem全选(&A)表4-2编辑菜单的结构4、向主窗体中添加listBoxFile、tabControl1、btnAddFiles、btnRemoveFiles、btnRemoveAll等控件,在tabControl1控件的tabPage1里加txtContents文本控件,窗体布置如图所示图4-3ColumnHeader集合编辑器6、在tabControl1控件的tabPage2里加dgvFrequency、btnSaveResult、btnPrintVie控件,dgvFrequency控件的Column属性设置如图所示abControl1控件的tabPage2布置如图所示图4-4ContentForm窗体布局用时1课时。教师演示,学生操作。任务二文本内容进行字符统计【任务描述】(该任务的内容和目的)添加、移除文件,显示文本文件中的内容,并对文本文件中的字符进行统计【任务实施】(完成此任务所需要的主要步骤)1、添加文件privatevoidbtnAddFiles_Click(objectsender,EventArgse){if(openFileDialogFiles.ShowDialog()==DialogResult.OK){foreach(stringsFileNameinopenFileDialogFiles.FileNames){if(File.Exists(sFileName))alFiles.Add(newFileInfo(sFileName));}listBoxFile.DisplayMember="Name";listBoxFile.ValueMember="FullName";bindingSourceFiles.ResetBindings(false);listBoxFile.SelectedIndex=bindingSourceFiles.Count-1;}}2、移除文件privatevoidbtnRemoveFiles_Click(objectsender,EventArgse){if(listBoxFile.SelectedValue!=null)alFiles.RemoveAt(listBoxFile.SelectedIndex);if(listBoxFile.Items.Count==0){txtContents.Text=string.Empty;dtb.Clear();}}3、清除所有文件privatevoidbtnRemoveAll_Click(objectsender,EventArgse){alFiles.Clear();bindingSourceFiles.ResetBindings(false);txtContents.Text=string.Empty;dtb.Clear();}4.显示文本文件中的内容privatevoidlistBoxFile_SelectedIndexChanged(objectsender,EventArgse){if(listBoxFile.SelectedValue!=null){txtContents.Text=File.ReadAllText(listBoxFile.SelectedValue.ToString(),Encoding.Default);InitTableData();Frequency();}}运行结果如图4-8所示。图4-8运行结果5.字符统计初始化字符privatevoidInitTableData(){dtb.Clear();AddRow(ControlChars.Lf.ToString(),"换行符");AddRow(ControlChars.Cr.ToString(),"回车符");AddRow(ControlChars.Tab.ToString(),"制表符");AddRow("","空格符");for(inti=33;i<=126;i++)AddRow(((char)i).ToString());}privatevoidAddRow(stringc,Strings){DataRowdr=dtb.NewRow();dr[0]=c;dr[1]=s;dr[2]=0;dr[3]=0.0f;dtb.Rows.Add(dr);}privatevoidAddRow(stringc){DataRowdr=dtb.NewRow();dr[0]=c;dr[1]=c;dr[2]=0;dr[3]=0.0f;dtb.Rows.Add(dr);}字符出现次数和频率统计privatevoidFrequency(){inttotalNum=0;if(txtContents.Text!=String.Empty){foreach(DataRowdrindtb.Rows){dr["次数"]=SearchString((string)dr["字符"]);totalNum+=int.Parse(dr["次数"].ToString());}foreach(DataRowdrindtb.Rows){dr["出现频率"]=float.Parse(dr["次数"].ToString())*100/float.Parse(totalNum.ToString());}}运行结果如图4-8所示。图4-8所示【理论知识】(对此任务所涉及到的关键知识点的讲解)请按F1键,查一下MSDN上的File类、DataRow中方法等的详细内容记下来。【知识拓展】(可选,可以放在任何位置)Microsoft.VisualBasic组件用时2课时。学生设计,教师答疑。任务三保存结果和打印预览【任务描述】(该任务的内容和目的)保存统计字符结果,创建报表,并生成一个报表进行打印预览【任务实施】(完成此任务所需要的主要步骤)1.保存统计字符结果privatevoidbtnSaveResult_Click(objectsender,EventArgse){if(saveFileDialogFiles.ShowDialog()==DialogResult.OK){DataSetds=newDataSet();ds.Tables.Add(dtb);ds.WriteXml(saveFileDialogFiles.FileName);}}运行结果如图3-10所示。图3-10运行结果2.创建报表创建一个Windows应用程序frmReport为窗体(Form)添加报表查看器(ReportViewer)依次找到工具箱-报表-报表查看器(ReportViewer),并把它拖到frmReport上。这会创建一个名为reportViewer1新的实例。通过设置reportViewer1.Dock=Fill,报表查看器将会填充窗体的整个区域,以显示报表。运行结果如图3-10所示。图3-11运行结果为工程添加数据集(DataSet)请依照如下步骤添加数据集:从解决方案资源浏览器中选择添加-新项目-数据集,其名称为DataSet1,并单击添加按钮完成。从解决方案资源浏览器中双击DataSet1,将会打开设计视图,右键单击并选择添加-数据表。其表头修改名称为DataTable1,如图3:接下来开始为数据表(DataTable1)添加列,此时的设计视图应该如图4所示。右键单击DataTable1并选择添加——列(Column)。图3-11运行结果重复以上步骤添加以下列,如图所示为工程添加报表从解决方案资源浏览器中选择添加-新项目-报表,其名称为Report1.rdlc,并单
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- CN118938806B 基于力位协同测量的飞机大部件装配驱动力优化方法 (南京工业职业技术大学)
- 小学六年级英语上册“笔友世界:兴趣、习惯与跨文化交际”主题单元教学设计
- 九年级英语鲁教版中考一轮复习Units56词汇进阶教学设计
- 初中音乐八年级《七子之歌-澳门》情感体验型教学设计
- 小学三年级数学上册《探寻乘法之根:需要多少钱》素养导向教学设计
- 废酸资源化综合利用项目技术方案
- 结构构件焊接监理管控报告
- 施工现场隐患闭环整改方案
- CN118652923B 一种酵母表达三螺旋结构ⅰ型重组人胶原蛋白的制备方法及其应用 (江苏创健医疗科技股份有限公司)
- 配电网线损治理实施方案
- 2026年港口危险货物安全管理人员考试试题题库含答案
- 2026山东烟台市壹通无人机系统有限公司暨三航无人系统技术(烟台)有限公司社会招聘40人笔试备考试题及答案详解
- 2026年河北廊坊大厂回族自治县公开招聘教育教学服务人员150名笔试参考题库及答案详解
- 2026年湖北省人民法院聘用书记员考试试题及答案
- 临床内科151种常见病诊断及治疗要点
- 闵行区2025-2026学年六年级上学期期末考试数学试卷及答案(上海新教材沪教版)
- 2025临川二中高一入学语文分班考试真题含答案
- 历年保安证试题及答案
- 从“五方面人员”中选拔乡镇领导班子成员面试试题附答案及解析 (广西壮族自治区桂林市2026年)
- 浙江省绍兴市稽阳联谊学校2026年4月高三年级联考思想政治试卷(含答案)
- 长江存储校招测评题目
评论
0/150
提交评论