C#课程设计备忘录软件设计.docx
- 文档编号:3049351
- 上传时间:2022-11-17
- 格式:DOCX
- 页数:25
- 大小:1.76MB
C#课程设计备忘录软件设计.docx
《C#课程设计备忘录软件设计.docx》由会员分享,可在线阅读,更多相关《C#课程设计备忘录软件设计.docx(25页珍藏版)》请在冰豆网上搜索。
C#课程设计备忘录软件设计
**学院
课程设计说明书
(2012/2013学年第一学期)
课程名称:
软件程序设计
题目:
备忘录软件设计
专业班级:
学生姓名:
放羊娃
学号:
指导教师:
设计周数:
2周
设计成绩:
2013年1月18日
1目的
本课程设计是电子工程专业的一门软件实践专业基础课,旨在提高学生的软件编程能力。
本设计将进一步加强学生对面向对象程序设计思想的理解,增强对C#程序语言的灵活运用。
要求学生能结合数据库知识,实现基本的应用软件,为以后从事相关行业打下软件编程基础。
2设计部分
2.1系统分析
备忘录系统所需要实现的功能是:
1、支持多用户登录,根据用户名和密码进入备忘录;
2、登录用户可完成备忘信息的添加、修改和删除功能;
3、支持登录提醒或其他提醒方式,同时使用Windows窗体和C#语言来进行实际设计;既然设计到了多用户等相关操作,就用到了SQLSERVER数据库;
4、在完成以上功能以后,添加了可以注册新用户的功能。
2.2系统设计
2.2.1系统备忘录系统的功能模块
用户信息模块:
用来管理用户的登录、注册;
主界面:
用来修改用户的个人登录密码,修改、删除用户的备忘内容;
备忘信息模块:
添加用户需备忘的信息、添加到时提醒铃声;
到时提醒模块:
用来提醒用户备忘的内容,及铃声提醒。
2.2.2系统流程图
进入登录界面
判断用户名和密码是否与数据库一致
主界面
注册/重新登录
到时提醒界面
退出
添加、编辑备忘信息
查看版本信息
访问作者博客
开始
N
Y
上图1为用户登录流程图
2.2.3数据库系统设计
用户信息表(UserInfo)
列名
数据类型
长度
是否为主键
是可否为空
注释
UserName
nvarchar
20
是
否
用户登录用户名
UserPwd
nvarchar
20
否
否
用户登录密码
备忘录信息表(MemoReminder)
列名
数据类型
长度
是否为主键
是可否为空
注释
Number
int
是
否
自动编号
UserName
nvarchar
20
否
否
用户名
Memo
nvarchar
MAX
否
是
备忘内容
ReminderTime
datetime
否
是
提醒时间
ReminderMusic
nvarchar
MAX
否
是
提醒铃声
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
点击提交
判断三个框里面的值是否有空值
判断两个框里面的密码是否一致
判断数据库中是否已有此用户
提示:
请填写完整信息
提示:
两次输入的密码不一致
提示:
此用户已注册
注册成功
Y
N
N
N
Y
5程序设计
5.1创建一个类,OperateDB。
publicsealedclassOperateDB
{
///
///获取连接数据库的字符串
///
publicstaticstringConnString
{
get
{
using(StreamReadersr=File.OpenText("Conn2DB.txt"))
{
returnsr.ReadLine();
}
}
}
publicstaticvoidPrepareCommand(SqlCommandcmd,SqlConnectionconn,stringcmdText)
{
if(conn.State!
=ConnectionState.Open)
{
conn.Open();
}
cmd.Connection=conn;
cmd.CommandType=CommandType.Text;
cmd.CommandText=cmdText;
}
///
///执行数据读取操作
///
///
///
publicstaticboolExecuteReader(stringcmdText)
{
using(SqlConnectionconn=newSqlConnection(ConnString))
{
SqlCommandcmd=newSqlCommand();
PrepareCommand(cmd,conn,cmdText);
SqlDataReaderdr=cmd.ExecuteReader();
returndr.Read();
}
}
///
///执行数据增加删除或修改操作
///
///
///
publicstaticintExecuteQuery(stringcmdText)
{
using(SqlConnectionconn=newSqlConnection(ConnString))
{
SqlCommandcmd=newSqlCommand();
PrepareCommand(cmd,conn,cmdText);
returncmd.ExecuteNonQuery();
}
}
}
5.2实现不同用户登录
privatevoidbtnLogin_Click(objectsender,EventArgse)
{
//NO.3方法:
用类封装来操作数据库
stringsql="select*fromUserInfowhereUserName='"+txtUsername.Text.Trim().ToLower()+"'andUserPwd='"+txtPassword.Text.Trim()+"'";
if(OperateDB.ExecuteReader(sql))
{
username=txtUsername.Text.Trim().ToLower();
frmMainfrm=newfrmMain();
frm.Show();
//frm.WindowState=FormWindowState.Minimized;
this.Hide();
}
else
{
MessageBox.Show("用户名或密码错误!
","出错了",
MessageBoxButtons.OK,MessageBoxIcon.Error);
}
}
5.3用户修改密码
if(txtNewPwd.Text.Trim()==txtNewPwdAgain.Text.Trim())
{
//使用类封装
stringsqlCheckPwd="select*fromUserInfowhereUserName='"+frmLogin.username+"'andUserPwd='"+txtOldPwd.Text.Trim()+"'";
if(OperateDB.ExecuteReader(sqlCheckPwd))
{
stringsql="updateUserInfosetUserPwd='"+txtNewPwd.Text.Trim()+"'whereUserName='"+frmLogin.username+"'";
if(OperateDB.ExecuteQuery(sql)==1)
{
MessageBox.Show("密码修改成功|!
");
this.Close();
}
else
{
MessageBox.Show("密码修改失败!
");
}
}
else
{
MessageBox.Show("旧密码输入不正确!
");
}
}
else
{
MessageBox.Show("两次输入的新密码不一致!
");
}
}
5.4用户修改和删除备忘内容
privatevoidfrmEdit_Load(objectsender,EventArgse)
{
BindData();
}
SqlDataAdapterda=newSqlDataAdapter();
DataSetds=newDataSet();
///
///数据绑定
///
voidBindData()
{
stringsql="selectNumber
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C# 课程设计 备忘录 软件设计