小型备忘录系统.docx
- 文档编号:25949994
- 上传时间:2023-06-16
- 格式:DOCX
- 页数:29
- 大小:348.38KB
小型备忘录系统.docx
《小型备忘录系统.docx》由会员分享,可在线阅读,更多相关《小型备忘录系统.docx(29页珍藏版)》请在冰豆网上搜索。
小型备忘录系统
ABSTRACT
Smallmemorandumsystemmainlybasedtheirdailyneedstodevelopnormally.Thissystemhasaneasytouse,theinterfaceisbeautiful,full-featured,andothercharacteristics.SSmallmemorandumsystemmainrealizationeachuserownshisownmemorights,aswellasforhisownmemohasadded,modified,queries,andotherfunctions,eachfeatureoftheimplementationareawardedonthebasisofthecreationtime,theremindertime,content,comments4oftheseconditions.Thissystemischaracterizedbyalargeamountofdatastorage,datasavetime;usethec#languageonthe.NETplatformprogrammingthesystemdesign.
Key-words:
memorandum、newlyincreased、alter、delete、inquirly
1.系统提出背景
1.1、备忘录的概念
备忘录是非正式的外交信件,特指政府部门或外交部致大使馆或公使馆的书面声明,尤其用于例行传达或询问,无需签署。
或指备忘或保留准备将来用的非正式的记事录,帮助或唤起记忆的记录。
备忘录是说明某一问题事实经过的外交文件。
备忘录写在普通纸上,不用机关用纸,不签名,不盖章。
备忘录可以当面递交,可以作为独立的文件送出,也可做为外交照会的附件。
现在备忘录的使用范围逐渐扩大,有的国际会议用备忘录作为会议决议、公报的附件。
备忘录也是外交上往来文书的一种,其内容一般是对某以具体问题的详细说明和据此提出的论点或辩驳,以便于对方记忆或查对。
外交会谈中,一方为了使自己所做的口头陈述明确而不至于引起误解,在会谈末了当面交给另一方的书面纪要,也是一种备忘录。
备忘录可以在双方会谈时当面递交,也可以作为独立的文件送给有关国家,还可以附在照会、公报、声明等文件后面,做为补充文件。
1.2、现代备忘录
随着社会的进步,人类文明的不断发展,经济水平的不断提高,人们的生活质量越来越好,节奏也跟着越来越快,很多事情都会被不小心的忘记,随之抛之脑后;所以,备忘录重新被人们抬起,但与以前的备忘录不同的是,备忘录不再是一种外交文书,而是一种具有闹钟提醒功能的记事本。
但是并不是所有的备忘录都符合自己的需求,随之,越来越多不同格式的备忘录纷纷而来。
1.3、设计此系统的目的与原因
简单的说,小型备忘录系统就是具有闹钟提醒功能的记事本。
用于提醒作用的备忘录,对于事情比较繁多或者比较健忘的你一个及时的提示。
通常,备忘录管理系统包括了与自己日常生活工作相关的各项活动,例如日常事物提醒,修改时间,计划安排等各个方面。
时间久了,是否难以找到以往写过的备忘或者笔记?
只要还记得备忘中的4个条件的其中一个,在搜索界面输入后简单按一下回车,就能快速找到相关的备忘。
根据客户的需求,此小型备忘录所必须具有的功能是数据存储量大,保存时间长,数据保存不易丢失,即使在电脑重装的情况下也一样。
2.总体设计
2.1、顶层数据流图,如图2-1:
图2-1
2.2、系统模块结构图,如图2-2:
图2-2
2.3、功能需求与程序与关系,如图2-3:
图2-3
3.具体系统实现功能介绍
3.1、备忘录新增功能
在系统的主界面中的4个条件(创建时间、提醒时间、内容、备注)中输入所要备忘的内容,再按一下新增,就已经新增加一个备忘日志,所有的备忘都可以在主界面的信息表中显示出来。
主要代码如下:
privatevoidbtnAdd_Click_1(objectsender,EventArgse)
{
stringcreat=Time1.Value.ToShortDateString().ToString();
stringtixing=Time2.Value.ToShortDateString().ToString();
stringneirong=text1.Text.Trim();
stringbeizhu=text2.Text.Trim();
stringstrwhere="InsertintoInformation(创建时间,提醒时间,内容,备注)values('"+creat+"','"+tixing+"','"+neirong+"'"+",'"+beizhu+"'"+")";
caozuo(strwhere);
}
3.2、备忘录删除功能
在主界面的信息表中,找到你想要删除的备忘日志,选定,在按一下删除,就表示删除成功,所删除的备忘日志在主界面的信息表以及数据库都查找不到。
主要代码如下:
privatevoidbtnDel_Click_1(objectsender,EventArgse)
{
stringcreat=Time1.Value.ToShortDateString().ToString();
stringtixing=Time2.Value.ToShortDateString().ToString();
stringneirong=text1.Text.Trim();
stringbeizhu=text2.Text.Trim();
MessageBoxButtonsmbs=MessageBoxButtons.YesNo;
DialogResultresult;
result=MessageBox.Show("是否要删除消息!
","删除",mbs);
if(result==DialogResult.Yes)
{
stringstrwhere="DeletefromInformationwhere创建时间='"+creat+"'and提醒时间='"+tixing+"'and内容='"+neirong+"'and备注='"+beizhu+"'";
caozuo(strwhere);
}
3.3、备忘录修改功能
在主界面的信息表中,找到你想要修改的备忘日志,选定,其4个内容在输入文本框中显示出来,就直接在上面修改,然后按修改或回车就表示已经修改好了,所修改的备忘会在主界面的信息表中显示出来。
主要代码如下:
privatevoidbtnUpdate_Click_1(objectsender,EventArgse)
{
intindex=dataGridView1.SelectedCells[0].RowIndex;
intmaxindex=dataGridView1.Rows.Count;
if(index>=0&&index { strcreat=dataGridView1.Rows[index].Cells[0].Value.ToString().Trim(); strtixing=dataGridView1.Rows[index].Cells[1].Value.ToString().Trim(); strneirong=dataGridView1.Rows[index].Cells[2].Value.ToString().Trim(); strbeizhu=dataGridView1.Rows[index].Cells[3].Value.ToString().Trim(); } stringcreat=Time1.Value.ToShortDateString().ToString(); stringtixing=Time2.Value.ToShortDateString().ToString(); stringneirong=text1.Text.Trim(); stringbeizhu=text2.Text.Trim(); stringstrwhere="UpdateInformationset创建时间='"+creat+"',提醒时间='"+tixing+"',内容='"+neirong+"',注备='"+beizhu+"'where创建时间='"+strcreat+"'and提醒时间='"+strtixing+"'and内容='"+strneirong+"'and备注='"+strbeizhu+"'"; caozuo(strwhere); } 3.4、备忘录查询功能 在主界面模块中,如果想查询备忘日志,按查询按钮,就跳到查询模块,然后选择查询类型,输入查询内容,再按回车或GO按键,就可以查询了,查询到的备忘日志会在查询模块中的信息表中显示出来。 主要代码如下: privatevoidsearch_Click(objectsender,EventArgse) { stringstrwhere=textBox1.Text.Trim(); if(comboBox1.SelectedIndex==0) { show("Select*fromInformationwhere创建时间='"+strwhere+"'"); } elseif(comboBox1.SelectedIndex==1) { show("Select*fromInformationwhere提醒时间='"+strwhere+"'"); } elseif(comboBox1.SelectedIndex==2) { show("Select*fromInformationwhere内容='"+strwhere+"'"); } elseif(comboBox1.SelectedIndex==3) { show("Select*fromInformationwhere备注='"+strwhere+"'"); } elseMessageBox.Show("查找类型不能为空! "); 3.5、备忘录提醒功能 当你登陆系统后,若设定的提醒时间与本地时间的日期一样的话,就会弹出消息框显示你今天的备忘日记,并同时会有铃声想起,铃声的时间长度大概为10秒左右;在消息框有个确定按钮,确定后,显示主界面。 主要代码如下: privatevoidtixing() { stringmessage=""; stringnow=DateTime.Now.Date.ToShortDateString(); stringstrwhere="select*fromInformationwhere提醒时间='"+now+"'"; SqlConnectionconn=newSqlConnection(@"DataSource=.\SQLEXPRESS;AttachDbFilename=C: \Users\killlua\Desktop\小英\Command3\Command3\Database1.mdf;IntegratedSecurity=True;UserInstance=True"); System.Data.DataSetds=newSystem.Data.DataSet(); conn.Open(); SqlDataAdapteradapter=newSqlDataAdapter(strwhere,conn); adapter.Fill(ds,"Information"); if(ds.Tables[0].Rows.Count>0) { StringBuildershortPath=newStringBuilder(80); stringfilepath= "C: \\Users\\killlua\\Desktop\\小英\\Command3\\Command3\\2.mp3"; if(filepath! =string.Empty) { GetShortPathName(filepath,shortPath,shortPath.Capacity); //取得短路径(DOC路径格式) mciSendString("closeall",null,0,0);//关闭设备 mciSendString("open"+shortPath.ToString()+"aliasMyMp3",null,0,0);//打开音乐文件 mciSendString("playMyMp3",null,0,0);//播放音乐 openFileDialog1.FileName=string.Empty; } for(inti=0;i { DataRowdr=ds.Tables[0].Rows[i]; stringnum=(i+1).ToString(); message+=num+"/创建时间: "+dr[0].ToString().Trim()+"提醒时间: "+dr[1].ToString().Trim()+"内容: "+dr[2].ToString().Trim()+"备注: "+dr[3].ToString().Trim()+Environment.NewLine; } MessageBox.Show(message,"闹钟提醒"); } 3.6、用户登陆功能 已经注册的用户在登陆界面输入用户名和密码,若用户名与密码与数据库存储的用户信息相匹配在话,则此用户就可以登陆自己的备忘系统界面,否则不能登陆系统。 主要代码如下: privatevoidenter_Click(objectsender,EventArgse) { stringusername=textBox1.Text.Trim(); stringpassword=textBox2.Text.Trim(); if(string.IsNullOrEmpty(username)||string.IsNullOrEmpty(password)) { MessageBox.Show("用户名和密码不能为空! "); return; } stringstrwhere="select*frompersonwhereusername='"+username+"'andpassword='"+password+"'"; if(show(strwhere)<=0) { MessageBox.Show("登录失败,你还没注册! "); return; } Form1form1=newForm1(); form1.Visible=true; this.Visible=false; } 3.7、用户注册功能 还没有注册的用户若想登陆此系统,则要进行注册,在登陆界面按“注册”进入注册界面,按照其要求填写用户信息,若用户名与数据库已存储的用户名不同在话,提交就会显示“注册成功”,自动返回登陆界面,让用户登陆;若相同,系统会提示用户已存在,要用户重新注册。 主要代码如下: privatevoidbtnsubmit_Click(objectsender,EventArgse) { stringusername=textBox1.Text.Trim(); stringpassword=textBox2.Text.Trim(); stringsex=""; if(radioButton1.Checked) sex=radioButton1.Text; elsesex=radioButton2.Text; if(string.IsNullOrEmpty(username)||string.IsNullOrEmpty(password)) { MessageBox.Show("用户名和密码不能为空"); return; } stringstrwhere1="select*frompersonwhereusername='"+username+"'"; if(show(strwhere1)>0) { MessageBox.Show("该用户已经存在! 请重新注册吧"); return; } stringstrwhere="Insertintoperson(username,password,sex)values('"+username+"','"+password+"','"+sex+"')"; if(caozuo(strwhere)>0) { MessageBox.Show("注册成功! "); Form3form3=newForm3(); form3.Visible=true; this.Dispose(); } } 3.8、用户退出功能 若用户在已完成自己在功能时或用户要离开又不想被别人看见自己在备忘日志信息时,按“退出”就可以注销用户,则退出系统。 主要代码如下: privatevoidbtnexit_Click(objectsender,EventArgse) { MessageBoxButtonsmbs=MessageBoxButtons.OKCancel; DialogResultresult; result=MessageBox.Show("确定要退出! ","退出",mbs); if(result==DialogResult.OK) { this.Dispose(); } } 4.数据库设计 4.1、概念数据库设计 概念结构设计的主要任务是根据用户需求设计数据库的概念数据模型。 概念模型独立于具体的数据库管理系统,它描述的是从用户角度看到的数据库,反映了用户的现实环境,而与数据库将来怎样实现无关。 在需求分析基础上设计出能够满足用户各种需求的实体及它们之间的关系,从而为以后的逻辑结构设计作好铺垫。 数据库设计是通过大量的数据获得管理所需要的信息,这就必须存储和管理大量的数据。 因此建立一个良好的数据组织结构和数据库,使整个系统都可以迅速、方便、准确地调用和管理所需的数据,是衡量信息系统开发工作好坏的主要指标之一。 4.2、数据库逻辑结构设计 数据库设计主要是进行数据库的逻辑设计,即将数据按一定的分类、分组系统和逻辑层次组织起来,是面向用户的。 数据库设计时需要综合企业各个部门的存档数据和数据需求,分析各个数据之间的关系,按照DBMS提供的功能和描述工具,设计出规模适当、正确反映数据关系、数据冗余少、存取效率高、能满足多种查询要求的数据模型。 用户表4-1: 字段名称 数据类型 宽度 主键 说明 Username nchar 20 no 用户名称 password nchar 20 no 用户密码 sex nchar 10 no 性别 表4-1 备忘日志信息表4-2: 字段名称 数据类型 宽度 主键 创建时间 nchar 50 No 提醒时间 nchar 50 No 内容 nchar 200 No 备注 nchar 200 No 表4-2 4.3、数据库物理设计 用户表,如图4-3: 图4-3 备忘日志信息表,如图4-4: 图4-4 5.详细设计 5.1、设计工具的选择 设计工具是MicrosoftVisualStudio2008类设计视图,功能上简单,使用也简单,只有最基本的系统设计功能。 优点是它能与代码完全一致的实时统一,非常方便了代码的编写。 缺点是不支持需求分析阶段的设计,没有用例图顺序图。 而根据客户的需求,数据库设计用的是SQLServer2005,而不是用Office自带的Access数据库。 5.2、主要问题和解决方案 5.2.1、用户登陆模块设计,如图5-1: 图5-1 在登陆界面,已经注册的用户要输入用户名和密码,才能登陆系统,若输入用户名与密码不匹配时,则会弹出消息框“登陆失败,你还没注册”,如图5-2: 图5-2 若还没有输入用户名或密码就登陆时,就会弹出消息框“用户名和密码不能为空”,如图5-3: 图5-3 5.2.2、用户注册模块设计,如图5-4: 图5-4 对于想要登陆系统而没有注册的用户,则要在登陆界面按“登陆”按钮进入注册界面;用户根据要求填写好按“提交”则会显示“注册成功”,然后返回登陆界面。 若用户名与已注册的用户重名,则不能注册,提交后系统就会提示用户已经存在,如图5-5: 图5-5 若用户名或者密码为空是,则不能注册,提交后系统会提示用户或密码不能为空,要重新注册,如图5-6: 图5-6 5.2.3、主界面模块设计,如图5-7: 图5-7 在主界面模块中,主要的功能操作都在上面,可以按照个人的意愿来进行备忘录在增加、修改、删除等等操作。 5.2.4、查询模块设计,如图5-8: 图5-8 如果备忘日志信息太多,用户想要查看某一信息在话,就可以用到查询功能,在主界面中点击“查询”按钮,就会进入查询界面。 查询界面中,有查询类型和查询内容要输入,查询类型有: 创建时间、提醒时间、内容、备注4种,选其一,然后在文本框输入想要收索在内容,查询后,内容就会在界面的数据表显示出来;若没有选择查询类型,或者只输入查询内容,则不能进行查询操作,即程序不响应此操作。 5.2.5、闹钟提醒设计,如图5-9: 闹钟提醒的时间单位为天,没有细化到小时,所以,提醒会在每天登陆系统时,会提醒今天在所有备忘内容。 要想上午新增备忘,下午就可以提醒,那就要备忘后我退出系统,下午再打开。 若从查询模块返回主界面模块时,闹钟也会提醒一次,即每当跳到主界面模块时,闹钟提醒功能就会执行一次。 图5-9 5
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 小型 备忘录 系统