基于.net平台下的电话通_讯录毕业设计论文.doc_第1页
基于.net平台下的电话通_讯录毕业设计论文.doc_第2页
基于.net平台下的电话通_讯录毕业设计论文.doc_第3页
基于.net平台下的电话通_讯录毕业设计论文.doc_第4页
基于.net平台下的电话通_讯录毕业设计论文.doc_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

无锡商业职业技术学院毕 业 设 计设计题目:基于.net平台下的电话通讯录 目 录前 言2第1章 .net 技术简介3第2章 .net开发环境配置42.1 计算机系统硬件配置42.2 软件需求42.3 visual studio 2010 介绍42.4 sql server 2008 简介4第3章 系统设计63.1 功能概要设计63.2 数据库设计7第4章 系统实94.1 分组管理94.2 数据库表创建修改144.3 号码查询与删除154.4 添加联系人174.5 登陆界面21第5章 结 论235.1 工作总结23参考文献24致 谢25基于.net平台下的电话通讯录摘 要通讯录软件是一款供交际范围广,业务较多的这类人群使用的软件,它可以储存用户的联系人信息,对联系人进行管理。该软件是一款单机程序,用户数据选用access进行统一管理。通讯录(corperation messeger)是专门提供给企业经理等业务繁忙人士。由于是用户少数人使用,为了保证用户信息的安全性,所有用户的基本信息统一由该软件的程序进行管理关键词:统一管理 业务较多 通讯录前 言进入大学就开始学习c#,当时只是初步了解,在以后的学习中发现用它编写小程序很有意思,偶尔发现随着社会的发展,人际关系变得越来越重要,为了保持良好的人际关系,必 须经常与亲戚、朋友、同学、同事保持联系,但是有时候存在着许多的限制条件,比如怎样找到交流对象的各种信息?可能你会想到现实生活中的手机等通讯工具,由于这些工具的单一性,不可能在第一时间找到自己想要的信息资料,因此,为了能够快速查找到联系人的信息,节省查找时间,开发通讯录管理系统。通过采用相关技术,以及老师的辅导和同学们的帮助,将系统设计的功能全部实现。功能包括:1.添加号码通过委托实现此窗体添加数据后父窗体的实时刷新2.修改号码2.1通过委托实现此窗体添加数据后父窗体的实时刷新2.2通过委托实现父窗体点击datagridview上数据实时显示到修改子窗体上。3.多条件模糊查询4.分组管理4.1分组名相同不能添加第一章 .net 技术简介.net技术是微软2000年发表的新技术架构, 是为了适应internet发展的需要所提供的特别适合网络编程和网络服务的平台。是继dos应用平台、windows应用平台之后的第三代应用平台,即互联网应用平台。利用.net技术架构,既可以开发桌面应用,又可以开发web 应用,还可以开发移动嵌入应用;既可以编码,又可以设计,还可以测试。.net技术已迅速成为市场上主流的软件开发和运行平台。 .net技术一改以前每一种语言都具有自己的函数库(类库)和开发环境的状态,提供了对符合.net 规范的语言的统一的支持,对所有.net程序设计语言提供统一的类库和开发环境,贯穿一致的开发理念和开发方法,每一种.net 程序设计语言仅仅是语法不同而已。现在流行的.net 语言有十几种,并且还在不断地增加。典型的.net 语言有:visual basic.net、visual c#.net 和visual c+.net 等。可以用 来创建windows平台下的windows应用程序和网络应用程序,也可以用来创建网络服务、智能设备应用程序和office插件等。b/s架构的应用因为客户端的免安装而广受欢迎,而对于业务处理繁琐、客户交互复杂的应用系统,三层架构的瘦客户端模式则是更为适用的方式第二章 .net开发环境配置2.1计算机系统硬件配置支持的操作系统: windows server 2003; windows vista; windows xp最低配置:1.6 ghz cpu内 存:384 mb 显示分辨率:1024x768 硬 盘 :5400 rpm 建议配置:2.2 ghz 或更快的 cpu1024 mb 或更大的内存1280x1024 显示分辨率7200 rpm 或更快的硬盘2.2软件需求操作系统:microsoft windows 7安装软件:vs2010+sql20082.3 visual studio 2010 介绍visual studio是微软公司推出的开发环境。是目前最流行的windows平台应用程序开发环境。visual studio 2010版本于2010年4月12日上市,其集成开发环境(ide)的界面被重新设计和组织,变得更加简单明了。visual studio 2010同时带来了net framework 4.0、microsoft visual studio 2010 ctp( community technology preview-ctp),并且支持开发面向windows 7的应用程序。除了microsoft sql server,它还支持ibm db2和 oracle 数据库。2.4 sql server 2008 简介sql server 2008是一个重大的产品版本,它推出了许多新的特性和关键的改进,使得它成为至今为止的最强大和最全面的sql server版本。这篇文章详细介绍了microsoft sql server 2008中的新的特性、优点和功能 在现今数据的世界里,公司要获得成功和不断发展,他们需要定位主要的数据趋势的愿景。微软的这个数据平台愿景帮助公司满足这些数据爆炸和下一代数据驱动应用程序的需求。微软将继续投入和发展以下的关键领域来支持他们的数据平台愿景:关键任务企业数据平台、动态开发、关系数据和商业智能。第三章 系统设计3.1功能概要设计系统结构图如下(图1)登陆界面主界面查 询删 除管 理添加号码修改号码分组管理图3-13.2数据库设计详细设计如下:3.2.1联系人名称属性如图3-2-1所示:图3-2-13.2.2分组管理信息属性如图3-2-2:图3-2-23.2.3联系人号码属性如图3-2-3:图3-2-3第四章 系统实本系统才用了c#窗体和sql结合的结构开发了学生信息管理系统。4.1分组管理4.1.1模块说明此模块用来分组管理联系人信息4.1.2分组管理public partial class formptype : form public delegate void mainloadgdv(); private mainloadgdv mlg; public formptype(mainloadgdv mlg1) initializecomponent(); this.mlg = mlg1; /将主界面的datagridview和combobox的load方法传过来 / / 窗体加载,初始化数据 / / / private void formptype_load(object sender, eventargs e) dgvptype.autogeneratecolumns = false; loaddatagridview(); #region 给dgvptype空间加载数据 / / 给dgvptype空间加载数据 / void loaddatagridview() phonenumtypebll bll = new phonenumtypebll(); dgvptype.datasource = bll.getallphonenumtype(); #endregion #region 插入分组数据 / / 插入分组数据 / / / private void btninsert_click(object sender, eventargs e) if (validateinput() phonenumtypebll bll = new phonenumtypebll(); if (bll.addphonenumtype(txtptypename.text.trim() mlg(); /成功添加 刷新主窗体的下拉列表和datagridview loaddatagridview(); txtptypename.text = ; msgdiv1.msgdivshow(添加成功, 1); else msgdiv1.msgdivshow(分组名称不能相同, 1); #endregion #region 验证是否输入分组名 / / 验证是否输入分组名 / / private bool validateinput() if (txtptypename.text.trim() = ) msgdiv1.msgdivshow(分组名称不能为空, 1); return false; return true; #endregion #region 关闭界面后,返回dialogresult值 / / 关闭界面后,返回dialogresult值 / / / private void formptype_formclosed(object sender, formclosedeventargs e) this.dialogresult = system.windows.forms.dialogresult.ok; #endregion #region 修改分组名 / / 修改分组名 / / / private void btnupdate_click(object sender, eventargs e) if (checkupdatedel() /验证是否选中行 if (validateinput() phonenumtype pnt = new phonenumtype(); / 存要修改的类型id和值 pnt.ptname = txtptypename.text.trim(); pnt.ptid = convert.toint32(dgvptype.selectedrows0.cells0.value); phonenumtypebll bll = new phonenumtypebll(); try if (bll.updatephonenumtype(pnt) mlg(); /成功修改 刷新主窗体的下拉列表和datagridview loaddatagridview(); /修改成功后刷新列表,并重置文本框 txtptypename.text = ; msgdiv1.msgdivshow(修改成功, 1); else msgdiv1.msgdivshow(修改失败, 1); catch (exception ex) msgdiv1.msgdivshow(ex.tostring(), 2); /发生异常则抛出 #endregion #region 行接受焦点,将所选行的值 放入到文本框中 / / 行接受焦点,将所选行的值 放入到文本框中 / / / private void dgvptype_rowenter(object sender, datagridviewcelleventargs e) if (dgvptype.selectedrows.count 0) txtptypename.text = dgvptype.selectedrows0.cells1.value.tostring(); #endregion #region 删除操作 private void btndel_click(object sender, eventargs e) if (messagebox.show(确定删除吗?, 提示, messageboxbuttons.yesno) = system.windows.forms.dialogresult.yes) if (checkupdatedel() phonenumtypebll bll = new phonenumtypebll(); if (bll.deletephonenumtypebyid(convert.toint32(dgvptype.selectedrows0.cells0.value) mlg(); /成功删除 刷新主窗体的下拉列表和datagridview loaddatagridview(); msgdiv1.msgdivshow(删除成功, 1); else msgdiv1.msgdivshow(删除失败, 1); #endregion #region 为修改和删除操作 验证是否选中数据 / / 为修改和删除操作 验证是否选中数据 / / private bool checkupdatedel() if (dgvptype.selectedrows.count 0) return true; else msgdiv1.msgdivshow(请选择要操作的数据, 1); return false; #endregion4.2数据库表创建修改4.2.1模块说明此模块用是创建修改用户数据库信息如图4-2-1-1:4.3号码查询与删除4.3.1模块说明此模块用来查询全部联系人信息和根据个人需要查询单独联系人信息,并且可根据个人需求删除联系人4.3.2联系人查询如图4-1-2-1图4-1-2-1代码实现:private void button1_click(object sender, eventargs e) int ptypeid = convert.toint32(cbbtype.selectedvalue); string pname = txtname.text.trim(); string pnum = txtnum.text.trim(); phonenumbll bll = new phonenumbll(); dgvnum.datasource = bll.searchphonenum(ptypeid, pname, pnum);4.3.3联系人删除如图4-1-3-1:图4-1-3-1代码实现:private void btndel_click(object sender, eventargs e) if (messagebox.show(确定要删除这条数据吗?, 提示, messageboxbuttons.yesno) = system.windows.forms.dialogresult.yes) if (dgvnum.selectedrows.count 0) phonenumbll bll = new phonenumbll(); int pid = convert.toint32(dgvnum.selectedrows0.cells0.value); if (bll.delphonnumbyid(pid) loaddatagridview(); msgdiv1.msgdivshow(删除成功, 1); else msgdiv1.msgdivshow(删除失败, 1); else msgdiv1.msgdivshow(请选择要删除的数据, 1); 4.4添加联系人4.4.1模块说明此模块用是当用户联系人增加时来向数据库添加联系人信息的4.4.2添加如图4-2-2-1:图4-2-2-1代码实现:using system;using system.collections.generic;using system.componentmodel;using system.data;using system.drawing;using system.linq;using system.text;using system.windows.forms;using phonenumms.bll;using phonenumms.model;namespace phonenumms public partial class formaddupdate : form public void setform(phonenum pn) cbbtype.selectedvalue = pn.ptypeid; txtname.text = pn.pname; txtnum.text = pn.pnum; txthomenum.text = pn.phomenum; lblpid.text = pn.pid.tostring(); public delegate void maindgvload(); private maindgvload mdv1; public formaddupdate(maindgvload mdv) initializecomponent(); this.mdv1 = mdv; private void formaddupdate_load(object sender, eventargs e) loadcombobox(); / / 验证输入 / / bool validateinput() if (txtname.text.trim() = ) msgdiv1.msgdivshow(名字不能为空, 1); return false; if (txtnum.text.trim() = & txthomenum.text.trim() = ) msgdiv1.msgdivshow(手机号和家电不能同时为空, 1); return false; return true; / / 加载下拉列表 / void loadcombobox() phonenumtypebll bll = new phonenumtypebll(); list list = bll.getallphonenumtype(); cbbtype.displaymember = ptname; cbbtype.valuemember = ptid; cbbtype.datasource = list; / / 添加号码 / / / private void btnyes_click(object sender, eventargs e) if (validateinput() phonenum pn = new phonenum(); pn.pname = txtname.text.trim(); pn.pnum = txtnum.text.trim(); pn.ptypeid = convert.toint32(cbbtype.selectedvalue); pn.phomenum = txthomenum.text.trim(); phonenumbll bll = new phonenumbll(); bool result = false; if (lblpid.text.trim() = ) result = bll.addphonenum(pn); else pn.pid = convert.toint32(lblpid.text.trim(); result = bll.updatephonenum(pn); if (result) mdv1(); /调用委托方法刷新父窗体的datagridview msgdiv1.msgdivshow(操作成功, 1); else msgdiv1.msgdivshow(操作失败, 1); private void btnno_click(object sender, eventargs e) this.close(); 4.5登陆界面4.5.1模块说明 用户通过登陆界面登录系统,查询修改通讯录4.5.2用户登录 如图4-5-2-1代码实现:namespace phonenumms public partial class login : form public login() initializecomponent(); private void ok_click(object sender, eventargs e) phonenumbll bll = new phonenumbll(); string searchpwd = bll.passwordsearch(username.text.tostring().trim(); if (password.text.tostring().trim().equals(searchpwd) formmain fm1 = new formmain(); fm1.show(); this.hide(); else if (password.text.tostring().trim().equals(null) messagebox.show(用?户不?存?在!?, 警告?, messageboxbuttons.ok, messageboxicon.error); username.text = ; password.text = ; username.focus(); else messagebox.show(密码?错误!?, 警告?, messageboxbuttons.ok, messageboxicon.error); username.text = ; password.text = ; usernam

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论