大部分参考:博客https://blog.csdn.net/qq_38899124/article/details/80813862

                                               .net课程设计

题目:ZCMU通讯录课程设计

学生姓名:yu121380      专业:计算机科学与技术

学院:....... 学号:......    

目录

一.引言

1.1 通讯录系统设计开发的目的和意义

1.2设计通讯录系统的任务及目标

1.3通讯录系统开发及运行的软硬件环境

二.通讯录系统的分析和设计

2.1 通讯录系统需求分析

2.1.1通讯录系统的目标任务

2.1.2 通讯录系统的数据流图

2.2 通讯录系统概念结构设计

2.3 通讯录系统逻辑结构设计

2.4 通讯录系统数据库创建

2.5 通讯录系统总体结构设计

三.通讯录系统的开发和实现

3.1 通讯录系统的登录模块

3.2 通讯录系统的主界面

3.2.1 管理员登录界面

3.2.2 普通用户登录界面

3.3通信录系统的插入界面

3.4 通讯录系统的修改界面

3.5 通讯录系统的分组管理

3.6 通讯录系统分组信息的插入和修改

四.总结

参考文献

附录一(各功能代码)

附录二 (背景图)

说明(问题解答等)

。。。。。。

。。。。。。(待更新)

。。。。。。

2.4 通讯录系统数据库创建

由系统E—R图转化而得到的关系模式如下:

(1)users(用户名,密码),其用户名为主键。

(2)联系人表(姓名,性别,出生日期,email,电话号码),其姓名为主键。

(3)分组信息(姓名,分组名称,工作地点),(姓名,分组名称)为主键。

建立数据库

数据库中用到的表:

user

分组信息

联系人表

软件:Microsoft visual studio 2010

各功能界面:

1.pubicclass类

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using System.Data.SqlClient;
using System.Threading.Tasks;namespace Tonxunlu
{public class publicclass{public static SqlConnection createconn(){//@"Data source=PC-20140124HPZO\SQLEXPRESS;User ID=sa;pwd=123456;Initial Catalog=DatabaseTonxunlu";//注意:Data source---指定sql sever数据库(我用的是sql)所在计算机名称或IP;(PC-20140124HPZO本计算机名+/SQLEXPRESS)//      User ID,pwd---指定用户名和数据库的账户和密码//      Initial Catalog---指定连接的数据库名称(DatabaseTonxunlu)string connStr = @"Data source=PC-20140124HPZO\SQLEXPRESS;User ID=sa;pwd=123456;Initial Catalog=DatabaseTonxunlu";SqlConnection conn = new SqlConnection(connStr);return conn;}public static DataTable gettable(string sql){SqlConnection conn = createconn();SqlDataAdapter da = new SqlDataAdapter(sql, conn);DataTable dt = new DataTable();da.Fill(dt);return dt;}public static bool zhixingSQl(string sql){SqlConnection conn1 = createconn();SqlCommand cmd = new SqlCommand(sql, conn1);if (conn1.State != ConnectionState.Open){conn1.Open();}if (cmd.ExecuteNonQuery() > 0){return true;}else{return false;}conn1.Close();}public static bool checkUser(string userName, string passWord){string sql = "select 密码 from users where 用户名= '" + userName + "'";DataTable dt = gettable(sql);if (passWord == dt.Rows[0]["密码"].ToString().Trim()){return true;}else{return false;}}}
}

2.welcome界面源代码

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;namespace Tonxunlu
{public partial class welcome : Form{public welcome(){InitializeComponent();}private void Welcome_Load(object sender, EventArgs e){}private void button1_Click(object sender, EventArgs e){login lo = new login();lo.Show();}private void button2_Click(object sender, EventArgs e){login1 lo1 = new login1();lo1.Show();}private void closenow_Click(object sender, EventArgs e){this.Close();}}
}

3.login界面源代码

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;namespace Tonxunlu
{public partial class login : Form{public login(){InitializeComponent();}private void login_Load(object sender, EventArgs e){}private void buttonok_Click(object sender, EventArgs e){if(textBoxname.Text.Length != 0 && textBoxpwd.Text.Length != 0){if(publicclass.checkUser(textBoxname.Text.Trim(), textBoxpwd.Text.Trim())){main formMain = new main();formMain.Show();}else{MessageBox.Show("用户名或密码不正确", "提示");}}else{MessageBox.Show("用户名或密码不能为空", "提示");}}private void buttoncancel_Click(object sender, EventArgs e){this.Close();}}
}

4.login1界面源代码

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using Tonxunlu;namespace Tonxunlu
{public partial class login1 : Form{public login1(){InitializeComponent();}private void button1_Click(object sender, EventArgs e){if (textBoxname.Text.Length != 0 && textBoxpwd.Text.Length != 0){if(publicclass.checkUser(textBoxname.Text.Trim(), textBoxpwd.Text.Trim())){main1 formMain = new main1();formMain.Show();}else{MessageBox.Show("用户名或密码不正确", "提示");}}else{MessageBox.Show("用户名或密码不能为空", "提示");}}private void button2_Click(object sender, EventArgs e){//Application.Exit();this.Close();}private void login1_Load(object sender, EventArgs e){}}
}

5.main界面源代码

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;namespace Tonxunlu
{public partial class main : Form{public main(){InitializeComponent();}private void main_Load(object sender, EventArgs e){DataTable dt = publicclass.gettable("select * from 联系人表");dataGridView1.DataSource = dt;}private void buttoninsert_Click(object sender, EventArgs e){insert forminsert = new insert();forminsert.Show();}private void buttondelete_Click(object sender, EventArgs e){string name;int index = dataGridView1.CurrentRow.Index;name = dataGridView1["姓名", index].Value.ToString().Trim();string sql = "delete 联系人表 where 姓名='" + name + "'";if (MessageBox.Show("是否要删除", "提示", MessageBoxButtons.YesNo) == System.Windows.Forms.DialogResult.Yes){if (publicclass.zhixingSQl(sql)){MessageBox.Show("删除成功|");group formgroup1 = new group();formgroup1.Show();}else{MessageBox.Show("删除失败");}}}private void buttonchange_Click(object sender, EventArgs e){string name;int index = dataGridView1.CurrentRow.Index;name = dataGridView1["姓名", index].Value.ToString().Trim();modify formmodify = new modify(name);formmodify.Show();}private void buttonaddgroup_Click(object sender, EventArgs e){group formgroup = new group();formgroup.Show();}private void buttoninquiry_Click(object sender, EventArgs e){string sql;if (textBoxname.Text.Length != 0){sql = "select * from 联系人表 where 姓名= '" + textBoxname.Text.Trim() + "'";}else{sql = "select * from 联系人表";MessageBox.Show("请输入姓名!", "提示");}DataTable dt = publicclass.gettable(sql);dataGridView1.DataSource = dt;}private void buttonrefresh_Click(object sender, EventArgs e){main_Load(null, null);}}
}

6.main1界面源代码

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;namespace Tonxunlu
{public partial class main1 : Form{public main1(){InitializeComponent();}private void main1_Load(object sender, EventArgs e){DataTable dt = publicclass.gettable("select * from 分组信息");dataGridView1.DataSource = dt;}private void buttoninquiry_Click(object sender, EventArgs e){string sql;if (textBox1.Text.Length != 0){sql = "select 联系人表.*,分组信息.分组名称,分组信息.工作地点 from 联系人表,分组信息 where 分组信息.分组名称='" + textBox1.Text.Trim() + "' and 联系人表.姓名=分组信息.姓名";}else{sql = "select * from 分组信息";MessageBox.Show("请输入分组名称!", "提示");}DataTable dt = publicclass.gettable(sql);dataGridView1.DataSource = dt;}}
}

7.insert界面源代码

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using Tonxunlu;namespace Tonxunlu
{public partial class insert : Form{public insert(){InitializeComponent();}private void button2_Click(object sender, EventArgs e){this.Close();}private void insert_Load(object sender, EventArgs e){try{comboBox1.Items.Add("man");comboBox1.Items.Add("woman");}catch (Exception ex){MessageBox.Show(ex.Message);}}private void in_insert_Click_1(object sender, EventArgs e){if (in_name.Text.Length != 0 && in_phone.Text.Length != 0 &&in_email.Text.Length != 0 && in_datatime.Text.Length != 0 &&comboBox1.SelectedItem != null){string sql = "insert into 联系人表 (姓名,性别,出生日期,email,电话号码)values('" +in_name.Text.Trim() + "','" + comboBox1.SelectedItem.ToString() + "','" + in_datatime.Text.Trim() + "','" + in_email.Text.Trim() + "','" + in_phone.Text.Trim() + "')";if (publicclass.zhixingSQl(sql)){MessageBox.Show("插入成功");this.Close();}else{MessageBox.Show("插入失败");}}else{MessageBox.Show("请完整填写信息");}}private void button2_Click_1(object sender, EventArgs e){this.Close();}}
}

8.modify界面源代码

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using Tonxunlu;namespace Tonxunlu
{public partial class modify : Form{string _name;public modify(string name){InitializeComponent();_name = name;}private void button2_Click(object sender, EventArgs e){this.Close();}private void modify_Load(object sender, EventArgs e){DataTable dt = publicclass.gettable("select * from 联系人表 where 姓名 = '" + _name + "'");mo_name.Text = _name;mo_sex.Text = dt.Rows[0][1].ToString().Trim();mo_datetime.Text = dt.Rows[0][2].ToString().Trim();mo_email.Text = dt.Rows[0][3].ToString().Trim();mo_phone.Text = dt.Rows[0][4].ToString().Trim();}private void mo_modify_Click_1(object sender, EventArgs e){if (mo_name.Text.Length != 0 && mo_phone.Text.Length != 0 &&mo_email.Text.Length != 0 && mo_datetime.Text.Length != 0 &&mo_sex.Text.Length != 0){string sql = "update 联系人表 set 性别= '" + mo_sex.Text.Trim() + "',出生日期 = '" +mo_datetime.Text.Trim() + "',email='" + mo_email.Text.Trim() + "' ,电话号码='" + mo_phone.Text.Trim() + "' where 姓名= '" + _name + "'";if (publicclass.zhixingSQl(sql)){MessageBox.Show("修改成功");this.Close();}else{MessageBox.Show("修改失败");}}else{MessageBox.Show("请完整填写信息");}}}}

9.group界面源代码

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using Tonxunlu;namespace Tonxunlu
{public partial class group : Form{public group(){InitializeComponent();}private void group_Load(object sender, EventArgs e){DataTable dt = publicclass.gettable("select * from 分组信息");dataGridView1.DataSource = dt;}private void buttonadd_Click(object sender, EventArgs e){group1 formgroup1 = new group1();formgroup1.Show();}private void buttonchange_Click(object sender, EventArgs e){string gr_name;int index = dataGridView1.CurrentRow.Index;gr_name = dataGridView1["姓名", index].Value.ToString().Trim();group1 modgr = new group1(gr_name);modgr.Show();}private void buttondelect_Click(object sender, EventArgs e){string name;int index = dataGridView1.CurrentRow.Index;name = dataGridView1["姓名", index].Value.ToString().Trim();string sql = "delete 分组信息 where 姓名='" + name + "'";if (MessageBox.Show("是否要删除", "提示", MessageBoxButtons.YesNo) == System.Windows.Forms.DialogResult.Yes){if (publicclass.zhixingSQl(sql)){MessageBox.Show("删除成功");}else{MessageBox.Show("删除失败");}}}private void buttonrefresh_Click(object sender, EventArgs e){group_Load(null, null);}}
}

10.group1界面源代码

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;namespace Tonxunlu
{public partial class group1 : Form{public group1(){InitializeComponent();}public group1(string gr_num){InitializeComponent();this.Text = "修改";this.gr_name1.Text = gr_num;this.gr_name1.Enabled = false;this.button1.Text = "修改";}private void button1_Click_1(object sender, EventArgs e){if (this.Text != "修改"){if (gr_name1.Text.Length != 0 && gr_name.Text.Length != 0 && gr_add.Text.Length != 0){string sql = "insert into 分组信息(姓名,分组名称,工作地点) values('" +gr_name1.Text.Trim() + "','" + gr_name.Text.Trim() + "','" + gr_add.Text.Trim() + "')";if (publicclass.zhixingSQl(sql)){MessageBox.Show("插入成功");this.Close();}else{MessageBox.Show("插入失败");}}else{MessageBox.Show("请完整填写信息");}}else{if (gr_name1.Text.Length != 0 && gr_name.Text.Length != 0 && gr_add.Text.Length != 0){string sql = "update 分组信息 set 工作地点='" + gr_add.Text.Trim() + "',分组名称 = '" +gr_name.Text.Trim() + "' where 姓名= '" + gr_name1.Text.Trim() + "'";if (publicclass.zhixingSQl(sql)){MessageBox.Show("修改成功");this.Close();}else{MessageBox.Show("修改失败");}}else{MessageBox.Show("请完整填写信息");}}}private void button2_Click_1(object sender, EventArgs e){this.Close();}}
}

背景图:

想要项目可私聊!

c#.net课程设计:ZCMU通讯录(待更新)相关推荐

  1. C++课程设计之通讯录管理系统

    Hello!亲爱的小伙伴们大家好啊,今天给大家带来的是C++课程设计之通讯录管理系统. 我们进行课程设计的主要目的是为了对C++的基础进行复习,为后续深入学习其他知识打好基础. 话不多说,咱们上代码: ...

  2. C语言课程设计:通讯录系统

    C语言课程设计:通讯录系统 [题目4]通讯录程序设计 设计一个实用的小型通讯录程序,具有添加,查询和删除功能.由姓名,籍贯,电话号码1,电话号码2,电子邮箱组成,姓名可以由字符和数字混合编码.电话号码 ...

  3. java通讯录课程设计_java课程设计_通讯录_通讯簿.doc

    java课程设计_通讯录_通讯簿.doc 还剩 45页未读, 继续阅读 下载文档到电脑,马上远离加班熬夜! 亲,很抱歉,此页已超出免费预览范围啦! 如果喜欢就下载吧,价低环保! 内容要点: impor ...

  4. 通讯录管理系统C语言课程设计大作业,c语言课程设计报告---通讯录管理系统.doc...

    c语言课程设计报告---通讯录管理系统.doc Yangtze University College of Arts and Science 学生实习手册 (课程设计报告) 学 部 理 工 学 部 专 ...

  5. java课设通讯录制作,JAVA课程设计--个人通讯录管理系统

    JAVA课程设计--个人通讯录管理系统 JAVAJAVA 课程设计课程设计 课题个人通讯录管理系统课题个人通讯录管理系统 课程名称 java 课程设计 院 系 计算机科学与技术学院 班 级 09 计本 ...

  6. C++课程设计 STL通讯录管理系统

    目录 一,设计要求3 (一)功能设计要求3 1.建立文件3 2.文件存储3 3.读取文件3 4.增加学生记录3 5.删除记录4 6.修改记录4 7.查询记录4 8.显示记录4 9.关于记录的排序4 1 ...

  7. 课程设计:通讯录系统(数据库)

    目录 摘要 第一章绪论 1.1 目的 1.2 背景 1.3 研究内容 第二章数据库需求分析 2.1 通讯录系统的功能 2.2 通讯录系统的数据流 2.3 通讯录系统数据流程图 2.4 通讯录的数据字典 ...

  8. C++课程设计报告--通讯录管理系统

    这是大一C++课程结业的课程设计,当时写了5天的代码,但也是很爽的过程.因为不好排版主要是个人比较懒,所以比较乱. 题目分析 建立两个文本文件,记录存储在手机上联系人的基本信息和存储在手机卡上的联系人 ...

  9. 课程设计:通讯录管理系统

    课程设计能很好的检验个人程序基础知识掌握程度.某种程度上来说,这一个课程设计也算入门级的小项目了,今天简单总结一下自己在面对课设时的思路. 一.设计要求 本次课程设计的主题是通讯录管理系统.其目的是通 ...

  10. C/C++课程设计:通讯录管理系统(含课程设计报告书,支持答辩)

    目录 引言 一.总览 二.核心代码 结构体定义 快排 文件读写处理 三.运行截图 程序初始化.交互界面 添加功能 显示功能 查找功能 修改功能 删除功能 四.课程设计报告书 温馨提示 引言 本课程设计 ...

最新文章

  1. 漫画讲述人工智能简史
  2. “科研女神”颜宁当选美国科学院外籍院士
  3. python元组支持双向索引吗_2、Python列表和元组
  4. 成功解决Exception unhandled OSError cannot open resource File: F:\Program Files\Python\Python36\Lib\si
  5. 收集的安装VS2005 sp1的注意事项
  6. 删掉SQL Server登录时登录名下拉列表框中的选项
  7. PHP远程文件管理,可以给表格排序,遍历目录,时间排序
  8. 【Cadence16.6】安装教程
  9. LMS自适应波束形成算法(MATLAB)
  10. oracle触发器update本表数据
  11. python爬虫批量下载图片
  12. 期货现货升跌水(期货下跌现货一定下跌吗)
  13. 【java】关于java编程语言开发
  14. 《中国传统文化学习之幸福人生讲座》有感
  15. 浙江大学SEL实验室
  16. oracle求字段中指定字符串出现个数
  17. 设置inline-block布局造成的幺蛾子事
  18. 给服务器上传文件高并发,基于容器实现高并发网站
  19. JavaScript脚本访问后台服务实例
  20. Java可以用到军事方面吗_恭喜长征五号遥三运载火箭发射,浅谈编程语言在军事方面的运用!...

热门文章

  1. idea新建maven项目没有src目录
  2. IIS7 + Tomcat7 整合共用80端口
  3. 自相关函数,功率谱,时间序列信号模型三者的关系
  4. 单核7:全景闹钟和单核工作法
  5. win10: Coursera 视频无法观看问题解决。
  6. CUDA Libraries简介
  7. 【转】IAR与Keil两款开发工具区别
  8. 论文阅读:Network In Network
  9. KKT条件和拉格朗日乘子法
  10. 淘宝SEO培训视频课程【22讲】