C#课程设计—备忘录软件设计

上传人:仙*** 文档编号:33886836 上传时间:2021-10-19 格式:DOC 页数:24 大小:2.12MB
返回 下载 相关 举报
C#课程设计—备忘录软件设计_第1页
第1页 / 共24页
C#课程设计—备忘录软件设计_第2页
第2页 / 共24页
C#课程设计—备忘录软件设计_第3页
第3页 / 共24页
点击查看更多>>
资源描述
*学院课程设计说明书(2012/2013学年第一学期)课程名称 : 软件程序设计 题 目 : 备忘录软件设计 专业班级 : 学生姓名 : 放羊娃 学 号: 指导教师 : 设计周数 : 2周 设计成绩 : 2013年1月18日 科信学院备忘录软件设计说明书目 录1目的22设计部分22.1系统分析22.2系统设计22.2.1 系统备忘录系统的功能模块22.2.2系统流程图2.2.3 数据库系统设计33 系统功能图44设计步骤44.1建立数据库41.1建立表 添加用户信息表(UserInfo)、备忘录信息表(MemoReminder)。44.2登录界面设计(frmLogin)44.3主界面设计(frmMain)54.3.1主菜单栏54.3.2 子菜单栏54.3.3 在主界面添加背景图片54.4修改密码54.4.1 在 用户操作 下拉菜单中的“修改密码”,可以修改当前用户的密码。54.5添加备忘内容54.5.1 设置添加备忘窗口54.5.2 数据库连接54.6编辑备忘内容54.7到时提醒界面设计64.7.1 到设置的时间后,会弹出此窗口64.7.2 按钮:“延时”按钮、“知道了”按钮64.8注册界面设计64.8.1 有三项内容:64.8.2 按钮:“提交”按钮、“取消”按钮65程序设计75.1创建一个类,OperateDB。75.2实现不同用户登录85.3用户修改密码95.4用户修改和删除备忘内容105.5用户添加备忘内容,及设定铃声125.6备忘提醒用户135.7新用户注册166设计总结与结论177参考文献171目的本课程设计是电子工程专业的一门软件实践专业基础课,旨在提高学生的软件编程能力。本设计将进一步加强学生对面向对象程序设计思想的理解,增强对C#程序语言的灵活运用。要求学生能结合数据库知识,实现基本的应用软件,为以后从事相关行业打下软件编程基础。2设计部分2.1系统分析备忘录系统所需要实现的功能是:1、 支持多用户登录,根据用户名和密码进入备忘录;2、 登录用户可完成备忘信息的添加、修改和删除功能;3、 支持登录提醒或其他提醒方式,同时使用Windows窗体和C#语言来进行实际设计;既然设计到了多用户等相关操作,就用到了SQL SERVER数据库;4、 在完成以上功能以后,添加了可以注册新用户的功能。2.2系统设计2.2.1 系统备忘录系统的功能模块用户信息模块:用来管理用户的登录、注册;主界面:用来修改用户的个人登录密码,修改、删除用户的备忘内容;备忘信息模块:添加用户需备忘的信息、添加到时提醒铃声;到时提醒模块:用来提醒用户备忘的内容,及铃声提醒。2.2.2系统流程图进入登录界面判断用户名和密码是否与数据库一致主界面注册/重新登录到时提醒界面退出添加、编辑备忘信息查看版本信息访问作者博客开始NY上图1 为用户登录流程图2.2.3 数据库系统设计用户信息表(UserInfo)列名数据类型长度是否为主键是可否为空注释UserNamenvarchar20是否用户登录用户名UserPwdnvarchar20否否用户登录密码备忘录信息表(MemoReminder)列名数据类型长度是否为主键是可否为空注释Numberint是否自动编号UserNamenvarchar20否否用户名MemonvarcharMAX否是备忘内容ReminderTimedatetime否是提醒时间ReminderMusicnvarcharMAX否是提醒铃声3 系统功能图 用户信息模块备忘录模块用户注册模块用户登录模块用户修改个人信息模块添加备忘模块编辑备忘模块修改备忘模块删除备忘模块提醒备忘模块备忘录系统图2 备忘录系统的总体结构4设计步骤4.1建立数据库1.1建立表 添加用户信息表(UserInfo)、备忘录信息表(MemoReminder)。4.2登录界面设计(frmLogin)当用户输入用户名和密码,点击登录按钮后,从数据库检索此想登录的用户的信息,如果登录名和密码与数据库里的一致,则登录进去,进入主界面,若其中一个错误或用户名不存在,则提示:用户名或密码错误;可以点击一旁的“注册用户”按钮;注册一个新用户,登录进去;还有一个重置按钮,就是当用户名或密码输入错误后,可以点击“重置”按钮,清空两个框里面的值。4.3主界面设计(frmMain)4.3.1主菜单栏用户操作备忘录帮助退出修改密码添加备忘编辑备忘版本说明访问作者博客4.3.2 子菜单栏 在备忘录下拉的编辑备忘中,包括修改和删除备忘。4.3.3 在主界面添加背景图片 4.4修改密码4.4.1 在 用户操作 下拉菜单中的“修改密码”,可以修改当前用户的密码。4.5添加备忘内容4.5.1 设置添加备忘窗口备忘内容提醒时间提醒铃声(从目录可选)按钮:添加、取消。4.5.2 数据库连接当按“添加”按钮,备忘内容录入数据库;4.6编辑备忘内容包括修改和删除功能;4.7到时提醒界面设计4.7.1 到设置的时间后,会弹出此窗口提醒备忘的内容显示当前时间响设置的铃声需延时的时间4.7.2 按钮:“延时”按钮、“知道了”按钮有一个控件(combobox),当只有选择需延时的时间后,点击延时才生效,否则会提示:请选择需要延时的时间;当点击“知道了”按钮后,会弹出:是否要保留此条备忘内容,若单击:Yes,则在数据库中保留此条备忘内容,然后关闭此提醒窗口;若单击No,则数据库中会删除此条记录,然后关闭此提醒窗口。4.8注册界面设计4.8.1 有三项内容:用户名称密码确认密码4.8.2 按钮:“提交”按钮、“取消”按钮点击登录界面的“注册”按钮,会进入此注册界面。Y点击提交判断三个框里面的值是否有空值判断两个框里面的密码是否一致判断数据库中是否已有此用户提示:请填写完整信息提示:两次输入的密码不一致提示:此用户已注册注册成功YNNNY5程序设计5.1创建一个类,OperateDB。public sealed class OperateDB / / 获取连接数据库的字符串 / public static string ConnString get using (StreamReader sr = File.OpenText(Conn2DB.txt) return sr.ReadLine(); public static void PrepareCommand(SqlCommand cmd,SqlConnection conn, string cmdText) if (conn.State!= ConnectionState.Open) conn.Open(); cmd.Connection=conn; cmd.CommandType=CommandType.Text; cmd.CommandText=cmdText; / / 执行数据读取操作 / / SQL语句? / 如果获取到值,返回true,否组是false public static bool ExecuteReader(string cmdText) using (SqlConnection conn=new SqlConnection(ConnString) SqlCommand cmd = new SqlCommand(); PrepareCommand(cmd,conn,cmdText); SqlDataReader dr=cmd.ExecuteReader(); return dr.Read(); / / 执行数据增加删除或修改操作 / / SQL语句 / 返回操作影响的行数 public static int ExecuteQuery(string cmdText) using (SqlConnection conn = new SqlConnection(ConnString) SqlCommand cmd = new SqlCommand(); PrepareCommand(cmd, conn, cmdText); return cmd.ExecuteNonQuery(); 5.2实现不同用户登录private void btnLogin_Click(object sender, EventArgs e) /NO.3方法:用类封装来操作数据库 string sql = select * from UserInfo where UserName= + txtUsername.Text.Trim().ToLower()+ and UserPwd=+txtPassword.Text.Trim()+; if (OperateDB.ExecuteReader(sql) username=txtUsername.Text.Trim().ToLower(); frmMain frm = new frmMain(); frm.Show(); /frm.WindowState = FormWindowState.Minimized; this.Hide(); else MessageBox.Show(用户名或密码错误!, 出错了, MessageBoxButtons.OK, MessageBoxIcon.Error); 5.3用户修改密码if (txtNewPwd.Text.Trim() = txtNewPwdAgain.Text.Trim() /使用类封装 string sqlCheckPwd = select*from UserInfo where UserName= + frmLogin.username + and UserPwd= + txtOldPwd.Text.Trim() + ; if (OperateDB.ExecuteReader(sqlCheckPwd) string sql = update UserInfo set UserPwd= + txtNewPwd.Text.Trim() + where UserName= + frmLogin.username + ; if (OperateDB.ExecuteQuery(sql) = 1) MessageBox.Show(密码修改成功|!); this.Close(); else MessageBox.Show(密码修改失败!); else MessageBox.Show(旧密码输入不正确!); else MessageBox.Show(两次输入的新密码不一致!); 5.4用户修改和删除备忘内容private void frmEdit_Load(object sender, EventArgs e) BindData(); SqlDataAdapter da = new SqlDataAdapter(); DataSet ds = new DataSet(); / / 数据绑定 / void BindData() string sql = select Number as 自动编号,Memo as 备忘内容,ReminderTime as 提醒时间,ReminderMusic as 提醒铃声 from MemoReminder where UserName= + frmLogin.username + ; SqlConnection conn= new SqlConnection(OperateDB.ConnString); conn.Open(); SqlCommand cmd = new SqlCommand(sql, conn); da.SelectCommand=cmd; da.Fill(ds); dataGridView1.DataSource=ds.Tables0; conn.Close(); private void btnEdit_Click(object sender, EventArgs e) SqlCommandBuilder cb=new SqlCommandBuilder(da); da.Update(ds); MessageBox.Show(修改成功|!); private void btnDelete_Click(object sender, EventArgs e) DialogResult dlResult=MessageBox.Show(this,要删除这些内容吗?,请确认,MessageBoxButtons.YesNo,MessageBoxIcon.Question); if (dlResult = DialogResult.Yes) int j = dataGridView1.SelectedRows.Count; int l=new intj; int i; for(i=0;ij;i+) li=dataGridView1.SelectedRowsi.Index; int k=0; while (k 0) MessageBox.Show(取消成功!, 消息提示, MessageBoxButtons.OK, MessageBoxIcon.Information); conn.Close(); this.Close(); private void btnDelay_Click(object sender, EventArgs e) if (comboBox1.Text=) MessageBox.Show(请选择需要延时的时间!); else TimeSpan t=new TimeSpan (0,0,Convert.ToInt32(comboBox1.SelectedItem.ToString(); DateTime now=DateTime .Now.Add (t); /获取延时后的时间 string connString = Data Source=.SQLEXPRESS;AttachDbFilename=|DataDirectory|sjk.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True; SqlConnection conn = new SqlConnection(connString); conn.Open(); string sql=update MemoReminder set ReminderTime=+now+where Number=+label4Number.Text+; SqlCommand cmd=new SqlCommand (sql,conn); cmd.CommandText=sql; if (cmd.ExecuteNonQuery() = 1) MessageBox.Show(OK!); this.Close(); conn.Close(); 5.7新用户注册private void button1_Click(object sender, EventArgs e) if (textBox1.Text.Trim() = | textBox2.Text.Trim() = | textBox3.Text.Trim() = ) MessageBox.Show(请填写完整信息, 提示); else if (textBox2.Text.Trim() != textBox3.Text.Trim() MessageBox.Show(两次输入密码不一致!请重新输入!); else string connString = Data Source=.SQLEXPRESS;AttachDbFilename=|DataDirectory|sjk.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True; SqlConnection conn = new SqlConnection(connString); conn.Open(); SqlCommand cmd = new SqlCommand(,conn); cmd.CommandText = select*from UserInfo where UserName=+textBox1.Text.Trim()+ ; if (null = cmd.ExecuteScalar() string sql = insert into UserInfo(UserName,UserPwd)values( + textBox1.Text.Trim() + , + textBox2.Text.Trim() + ); cmd.CommandText = sql; cmd.ExecuteNonQuery(); MessageBox.Show(恭喜您注册成功!, 提示, MessageBoxButtons.OK, MessageBoxIcon.Information); this.Close(); else MessageBox.Show(已有+textBox1.Text.Trim()+用户存在,请选择其他名称,提示,MessageBoxButtons .OK ,MessageBoxIcon.Hand ); 6设计总结与结论通过本次课程设计的亲身经历与实践,使我认识到C#和数据库学习的重要性和严谨性,需要投入极大的认真和专注。我们所做的备忘录系统较大程度用到了数据库,因此也是一次更加深度的了解学习。同时需要培养一种初步的工程理念和好的团队合作精神,在这些方面我不得不说有很大的差距,虽然我参与了绝大部分的实践活动,但由于平时的不扎实,对一些基本的东西可以掌握。但是这期间又遇到不少的问题,旧的解决,新的又来,刚理解一些,又遇到很多见都没见过的问题,期间得到老师和同学的很大帮助,但是有些真的感觉不好掌握,最后,大体是完成了,却也有一些缺漏和似懂非懂的东西,再加上时间也很仓促,一个问题费半天时间,不能不说有很大遗憾。这些都是所欠缺的,需要我不断的去学习和实践!总之,学什么都要不断的去尝试和积累,需要耐心和恒心去做,这次课程设计就是一个很好的锻炼实践的机会!7参考文献1刘甫迎、刘光会、王蓉.C#程序设计教程(第2版).北京:电子工业出版社,20082Microsoft Visual C# 2008 help,20083李兰友 杨晓光.Visual C#.NET程序设计.北京:清华大学 北方交通大学出版社,20044王昊亮,李刚等.Visual C#程序设计教程.北京:清华大学出版社,2003课程设计评 语课程设计成 绩指导教师(签字) 年 月 日软件使用说明书本备忘录系统是针对多用户登录的一个应用软件。它面向每一个人。在登录界面,用户可凭用户名和密码进入本软件。如图1所示。图1 用户登录界面刚开始用的用户,若没有登录进去的用户名和密码,可以点击 图1 界面中的“注册账号”,进入注册界面,如图2所示。图2 用户注册界面用户注册时候,一定要填写完整里面的信息,不然会有报错提醒,注册失败;注意:当用户注册时,填写的用户名,若数据库里面已有当前的用户,点击“提交”按钮后,会提示:已有此用户的提示;例如:数据库里已有1 用户,如图3所示。图3 当用户登录进去之后,会进入主界面,如图4所示。图4 主界面用户可以更改自己的密码,点击“用户操作”下拉列表中的“修改密码”,可修改密码,如图5所示。图5 修改密码界面当点击编辑按钮后,会弹出编辑界面,用户可以修改和删除自己的备忘中的一些内容;如图6所示。图6 编辑界面当点击添加按钮后,会弹出添加备忘界面,用户可以填写备忘内容、设置提醒时间、选择提醒铃声,如图7所示。图7 添加备忘界面到达自己设定的提醒时间后,会弹出提醒窗口,来提醒用户,如图8所示。图8提醒界面在提醒窗口上,若点击延时按钮,一定要在选择延时时间的框里选择要延时的时间;当点击“知道了”按钮后,会提示:要不要保留此条备忘内容,若点击“Yes”,则会在数据库中继续有这条备忘的保留,若点击“No”,则会删除在数据库里的此条备忘,以释放数据库里的存储,然后关闭此提醒窗口。- 23 -
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!