ImageVerifierCode 换一换
格式:DOCX , 页数:24 ,大小:96.16KB ,
资源ID:14782601      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-14782601.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(实验五Windows应用程序设计DOC.docx)为本站会员(b****5)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

实验五Windows应用程序设计DOC.docx

1、实验五Windows应用程序设计DOC大理学院课程教案(实验教学)课程名称: C#面向对象程序设计 课程类型:( 1 )1、必修;2、选修;3、其它授课对象: 计算机科学与技术 专业(本、专科) 2013 级 1、2班授课时间: 2014 至 2015 学年第 3 学期 计划学时: 36 学时(其中:理论 36 ,实验: 36 )任课教师: 杜英国 所属学院: 数学与计算机学院 课程管理部门(教研室): 软件教研室 大理学院教务处 制课程名称:C#面向对象程序设计教 材:C#程序设计实用教程 黄兴荣 李昌领 李继良编著 清华大学出版社授课人1:杜英国 专业技术职务:讲师学 历:研究生 学 位:

2、硕士授课人2: 专业技术职务:学 历: 学 位:实验题目:Windows应用程序设计 计划学时:3实验类型:( 4 )1、演示性 2、验证性 3、综合性 4、设计性每组实验的学生人数: 1 人教学目的和要求:熟悉C#集成开发环境;了解各功能的菜单命令;显示所有的可见窗口和所有工具栏(箱),随后再将上述的窗口和工具栏(箱)进行隐藏;了解工具栏(箱)中有哪些主要控件;了解控件的属性及事件;掌握控制台应用程序的输入输出方法的使用。实验方法(包括实验中需要注意的问题等):1. 在VS下,创建一个窗体应用程序。2. 在解决方案资源管理其中创建子窗体。3. 在窗体上搭建相关控件。4. 编写代码。5. 注意

3、个窗体之间的数据回传。实验重点(主要解决的问题和达到的目的):1. 窗体、控件的使用。2. 理解窗体间数据回传。3. 掌握分级信息的处理。实验难点(预计实验过程中会遇到的问题和解决方案):1. 窗体间数据回传。2. 分级信息的处理。教学方法(实验前的教学和实验过程中的指导方法): 实验前教师先讲解完9章内容,学生认真复习9章内容;在实验过程中结合实验环境教师可先提示性讲解实验内容,再由学生自己完成实验。如果实验完成情况较差,教师统一辅导。实验仪器和材料:计算机,Windows XP, VS2008实验报告要求和思考题:教师现场检查评价本次实验。参考资料:C#程序设计项目教程实验指导与课程设计

4、黄兴荣 编著 清华大学出版社实验5 Windows应用程序设计完成具有如下层次结构节点信息的添加与显示。例如:大学楚雄师范院大理学院 文学院数学与计算机学院计算机科学与技术专业 2010级计算机科学与技术专业2班2010级计算机科学与技术专业1班 序号学号姓名性别12009162201涂桂江男22010162102何芹芹女32010162130张康男42010162131章雕女信息与计算科学专业通信专业根节点使用Root类来表示,参考代码如下:using System;using System.Collections.Generic;using System.Text;namespace Wi

5、ndowsApplication1 class Root string rootName; public string RootName set rootName = value; get return rootName; public List universityList = new List();/存储root节点的子节点,这里是university节点 主界面设计如下:树图控件(TreeView)、列表视图控件(ListView)、上下文菜单(ContextMenuStrip),同学还可以自己添加主菜单来实现上下文菜单功能。主要功能:通过上下文菜单实现节点信息的添加,每一类信息的添加都

6、在一个单独的界面下完成。之后,把所添加的信息回传给Form1窗体。窗体之间的数据回传(通信)通过事件机制实现。树图控件(TreeView)显示所有节点的层次信息。列表视图控件(ListView)显示当前节点的子节点的详细信息。部分程序参考代码:using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;namespace WindowsApp

7、lication1 public delegate void UniversityDelegate(object sender,UniversityEventArgs e);/学校回传数据事件使用的代理 public delegate void InstituteDelegate(object sender, InstituteEventArgs e);/学院回传数据事件使用的代理 public partial class Form1 : Form TreeNode node; Root root;/根节点 ListViewItem item ; / / 初始化Form1窗体,初始化树视图 /

8、 public Form1() InitializeComponent(); root = new Root(); root.RootName = 大学; node = new TreeNode(root.RootName); treeView1.Nodes.Add(node); / / 学校事件回调函数 / / University窗体 / UniversityEventArgs实例 public void ReceiveUniversityData(object sender, UniversityEventArgs e) if (treeView1.SelectedNode = null

9、) MessageBox.Show(请选择一个节点, 提示信息, MessageBoxButtons.OK, MessageBoxIcon.Information); return; else node = new TreeNode(e.XiaoMing); treeView1.SelectedNode.Nodes.Add(node); e.FuJieDian = Root; root.universityList.Add(e);/同学注意这条语句的作用, /由于在选中根节点的时候要在列表视图里面 /显示根节点的所有子节点即大学节点信息 /所以要记录所有大学的信息 treeView1.Sele

10、ctedNode = node; public void ReceiveInstitute(object sender,InstituteEventArgs e) if (treeView1.SelectedNode = null) MessageBox.Show(请选择一个节点, 提示信息, MessageBoxButtons.OK, MessageBoxIcon.Information); return; else node = new TreeNode(e.XueYuanMing); treeView1.SelectedNode.Nodes.Add(node); treeView1.Ex

11、pandAll(); e.FuJieDian = treeView1.SelectedNode.Text;/设置新创建节点的父节点 foreach (UniversityEventArgs uea in root.universityList) /设置选中节点的子节点 if (uea.XiaoMing = treeView1.SelectedNode.Text) uea.ziJieDianJiHe.Add(e); treeView1.SelectedNode = node; / / 上下文菜单事件回调函数 / / 事件源 / 事件相关信息描述 private void 学校ToolStripM

12、enuItem_Click(object sender, EventArgs e) University university = new University(); university.UniversityData += new UniversityDelegate(ReceiveUniversityData);/绑定事件 university.ShowDialog(); university.UniversityData -= new UniversityDelegate(ReceiveUniversityData);/不再使用该事件,撤销它 private void 学院ToolStr

13、ipMenuItem_Click(object sender, EventArgs e) Institute institute = new Institute(); institute.InstituteData += new InstituteDelegate(ReceiveInstitute); institute.ShowDialog(); institute.InstituteData += new InstituteDelegate(ReceiveInstitute); / / 选中树图节点后触发事件的回调函数,动态添加表头,加载信息 / / / private void tree

14、View1_AfterSelect(object sender, TreeViewEventArgs e) listView1.Items.Clear();/清空listView1内容 listView1.Columns.Clear();/清除listView1表头 if (treeView1.SelectedNode.Text = 大学)/选中是根节点则加载所有大学节点 listView1.Columns.Add(校名, 150, HorizontalAlignment.Center); listView1.Columns.Add(地址, 200, HorizontalAlignment.C

15、enter); listView1.Columns.Add(主管部门, 150, HorizontalAlignment.Center); listView1.Columns.Add(学校性质, 100, HorizontalAlignment.Center); foreach (UniversityEventArgs uea in root.universityList) item = new ListViewItem(uea.XiaoMing); item.SubItems.Add(uea.DiZhi); item.SubItems.Add(uea.ZhuGuanBuMen); item.

16、SubItems.Add(uea.XueXiaoXingZhi); listView1.Items.Add(item); else foreach (UniversityEventArgs uea in root.universityList)/选中是大学节点则加载该大学下的所有学院 if (uea.XiaoMing = treeView1.SelectedNode.Text) listView1.Columns.Add(学院名, 150, HorizontalAlignment.Center); listView1.Columns.Add(地址, 200, HorizontalAlignme

17、nt.Center); listView1.Columns.Add(主管部门, 150, HorizontalAlignment.Center); listView1.Columns.Add(学院概况, 100, HorizontalAlignment.Center); foreach (InstituteEventArgs inst in uea.ziJieDianJiHe) item = new ListViewItem(inst.XueYuanMing); item.SubItems.Add(inst.DiZhi); item.SubItems.Add(inst.ZhuGuanBuMen

18、); item.SubItems.Add(inst.XueYuanGaiKuang); listView1.Items.Add(item); private void Form1_Load(object sender, EventArgs e) listView1.FullRowSelect = true; listView1.View = View.Details; listView1.Scrollable = true; listView1.MultiSelect = false; 大学窗体界面设计如下:代码:using System;using System.Collections.Ge

19、neric;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;namespace WindowsApplication1 public partial class University : Form public event UniversityDelegate UniversityData; public University() InitializeComponent(); private void button1_C

20、lick(object sender, EventArgs e) if(UniversityData!=null) UniversityEventArgs ue = new UniversityEventArgs(); ue.XiaoMing = textBox1.Text; ue.DiZhi = textBox2.Text; ue.ZhuGuanBuMen = textBox3.Text; ue.XueXiaoXingZhi = textBox4.Text; UniversityData(this,ue); this.Close(); private void button2_Click(o

21、bject sender, EventArgs e) this.Close(); using System;using System.Collections.Generic;using System.Text;namespace WindowsApplication1 / / 描述学校信息 / public class UniversityEventArgs:EventArgs string xiaoMing; public string XiaoMing set xiaoMing = value; get return xiaoMing; string diZhi; public strin

22、g DiZhi set diZhi = value; get return diZhi; string zhuGuanBuMen; public string ZhuGuanBuMen set zhuGuanBuMen = value; get return zhuGuanBuMen; string xueXiaoXingZhi; public string XueXiaoXingZhi set xueXiaoXingZhi = value; get return xueXiaoXingZhi; string fuJieDian; public string FuJieDian set fuJ

23、ieDian = value; get return fuJieDian; public List ziJieDianJiHe = new List();/存储学校下属学院的节点集合 学院窗体设计如下:using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;namespace WindowsApplication1 public part

24、ial class Institute : Form public event InstituteDelegate InstituteData; public Institute() InitializeComponent(); private void button1_Click(object sender, EventArgs e) if(InstituteData!=null) InstituteEventArgs iea = new InstituteEventArgs(); iea.XueYuanMing = textBox1.Text; iea.DiZhi = textBox2.T

25、ext; iea.ZhuGuanBuMen = textBox3.Text; iea.XueYuanGaiKuang = textBox4.Text; InstituteData(this,iea); this.Close(); private void button2_Click(object sender, EventArgs e) this.Close(); using System;using System.Collections.Generic;using System.Text;namespace WindowsApplication1 / / 描述学院信息 / public cl

26、ass InstituteEventArgs:EventArgs string xueYuanMing; public string XueYuanMing set xueYuanMing = value; get return xueYuanMing; string diZhi; public string DiZhi set diZhi = value; get return diZhi; string zhuGuanBuMen; public string ZhuGuanBuMen set zhuGuanBuMen = value; get return zhuGuanBuMen; st

27、ring xueYuanGaiKuang; public string XueYuanGaiKuang set xueYuanGaiKuang = value; get return xueYuanGaiKuang; string fuJieDian; public string FuJieDian set fuJieDian = value; get return fuJieDian; /用List定义子节点集合 运行效果图:实验要求:1.先搭建上述程序界面,并进行调试。2.参考上述程序完成,班级、专业、学生信息的添加。(以本班学生为例)3.增加节点类型信息,在上下文菜单中添加修改子菜单,实现节点信息的修改。4.完成删除功能。5.每位同学提交本次实验电子文档。 说明:在程序中,没有对程序进行异常处理,同学自己添加异常处理的代码。另外,对树的加载是通过层次判断实现的,如果层次较多,显然行不通。而应采用递归遍

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2