资源预览内容
第1页 / 共54页
第2页 / 共54页
第3页 / 共54页
第4页 / 共54页
第5页 / 共54页
第6页 / 共54页
第7页 / 共54页
第8页 / 共54页
第9页 / 共54页
第10页 / 共54页
亲,该文档总共54页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第1页 共1页目 录1系统设计的目的和意义22系统总框架图33软件功能描述34软件代码的设计341数据结构描述与定义342模块设计55软件使用说明76测试结果与分析77比较有特色的函数128存在的不足与对策149课程设计总结14附录:源程序清单(核心部分)151系统设计的目的和意义采用面向对象设计思想,管理2类人员。教师信息(姓名,编号,年龄,职称,学历,籍贯,工作日期),学生信息(姓名,年龄,学号,籍贯,入学日期)。完整输入/输出设计,写入ACCESS文件,分别建立两个表信息,一个存储教师信息,一个存储学生信息。采用工程文件方式组织程序。能进行增、 删、 查、改等操作。初始完成密码认证框的编写。外观设计风格各异2系统总框架图3软件功能描述管理2类人员:教师信息(姓名,编号,年龄,职称,学历,籍贯,工作日期),学生信息(姓名,年龄,学号,籍贯,入学日期)。完整输入/输出设计,写入ACCESS文件。能进行增、删、 查、改等操作。采用友好的用户界面。管理用户:添加、删除、修改密码等操作。4软件代码的设计41数据结构描述与定义ACCESS表表password:Puser文本Ppassword文本Pisadmin是/否表student:Sname文本Sno文本Sage文本Snative文本Setime文本表teacher:Tname文本Tno文本Tage文本Ttitle文本Tdegree文本Tnative文本Twtime文本MFC类class CUserSet : public CRecordset/用户数据定义CStringm_Puser;CStringm_Ppassword;BOOL m_Pisadmin;class CStudentSet : public CRecordset/学生数据定义CStringm_Sname;CStringm_Sno;CStringm_Sage;CStringm_Snative;CStringm_Setime;class CTeacherSet : public CRecordset/教师数据定义CStringm_Tname;CStringm_Tno;CStringm_Tage;CStringm_Ttitle;CStringm_Tdegree;CStringm_Tnative;CStringm_Twtime;42模块设计系统共分成七个模块,分别是:用户登录模块,用户管理模块,学生信息查询模块,学生信息编辑模块,教师信息查询模块,教师信息编辑模块,帮助模块。用户登录模块用户管理模块查询模块(学生信息查询,教师信息查询)编辑模块(学生信息编辑,教师信息编辑)5软件使用说明登录系统时可根据ACCESS表password查看用户名和密码。无需建立ODBC。登录成功后显示主菜单,有系统管理,学生信息管理,教师信息管理和帮助。在系统管理中,你可以进行用户管理,注销/重新登录和退出系统。在学生信息管理中,你可以进行学生信息查询和添加/修改信息。教师信息管理中,你可以进行教师信息查询和添加/修改信息。在帮助中,你可以查看软件的相关内容。特别提醒:如果你的登录是非管理员,那么你将没有用户管理,添加/修改信息等操作。在用户管理中,你可以修改密码,新增用户,删除用户。在信息查询中,你可以通过编号查询或姓名查询。可以同时输入或不输,若不输则显示全部信息。在添加/修改信息中,你可以对信息进行添加,修改,删除等操作。6测试结果与分析运行程序,显示登录界面。(管理员建议使用:用户名“weiheng”,密码“1234”。非管理员建议使用:用户名“ww”,密码“1234”。)成功登录后显示主界面。然后根据菜单内容依次运行。返回登录界面。这是用户信息界面。以管理员身份进入该界面。图为创建一个用户“bbb”的操作。这是学生信息查询界面。若不输入查询项查询,则显示所有数据。图为根据学生学号查询。显示,添加,修改,删除一体化。根据所需要的操作进行操作。图为教师信息查询。操作方法如同学生信息查询图为教师信息编辑。操作方法如同学生信息编辑图为帮助界面。7比较有特色的函数 显示全部信息函数,以下是显示全部教师信息函数。void CTeachereDlg:OnTeonall() m_ctlList.DeleteAllItems();m_ctlList.SetRedraw(FALSE);UpdateData(TRUE);CString strSQL;strSQL.Format( select * from teacher);if(!m_recordset.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL)MessageBox(打开数据库失败!,数据库错误,MB_ICONSTOP);return ;int i=0;while(!m_recordset.IsEOF()m_ctlList.InsertItem(i,m_recordset.m_Tno);m_ctlList.SetItemText(i,1,m_recordset.m_Tname);m_ctlList.SetItemText(i,2,m_recordset.m_Tage);m_ctlList.SetItemText(i,3,m_recordset.m_Ttitle);m_ctlList.SetItemText(i,4,m_recordset.m_Tdegree);m_ctlList.SetItemText(i,5,m_recordset.m_Tnative);m_ctlList.SetItemText(i,6,m_recordset.m_Twtime);i+;m_recordset.MoveNext();m_recordset.Close();m_ctlList.SetRedraw(TRUE);查询函数,以下是学生信息查询函数void CStudentDlg:OnSsearch() UpdateData( TRUE );m_ctlList.DeleteAllItems();m_ctlList.SetRedraw(FALSE);CString str=select * from student;UpdateData( true );if(!m_recordset.Open(AFX_DB_USE_DEFAULT_TYPE, _T(str)MessageBox(打开数据库失败!,数据库错误,MB_ICONSTOP);return ;int i=0;while(!m_recordset.IsEOF()if(m_recordset.m_Sno=m_valSno|m_valSno=)&(m_recordset.m_Sname=m_valSname|m_valSname=) )m_ctlList.InsertItem(i,m_recordset.m_Sno);m_ctlList.SetItemText(i,1,m_recordset.m_Sname);m_ctlList.SetItemText(i,2,m_recordset.m_Sage);m_ctlList.SetItemText(i,3,m_recordset.m_Snative);m_ctlList.SetItemText(i,4,m_recordset.m_Setime);i+;m_recordset.MoveNext();m_recordset.Close();m_ctlList.SetRedraw(TRUE);8存在的不足与对策 一开始做的程序,界面简单,显示信息单调,分不清普通用户和管理员的区别。改进后,加入了图片和皮肤系统提供了友好的界面,采用列表控件进行对多组数据的显示,同时添加根据是否是管理员进行操作判定。9课程设计总结在这次课程设计中,我学到了很多。拿到课题是觉得还是很简单的,即便加入身份验证功能。无非就是三张ACCESS表,一张储存用户名和密码,一张储存学生信息,还有一张储存教师信息。创建对话框也就三个,分别对应。内容简单,功能也满足要求,但是缺乏创新。于是在此基础上又加入了注册和修改密码。反复改,反复改,不知不觉的一个工程做了好几遍。当我把所有我能想到的东西都加进去后,还是觉得少了点什么。这一直觉来自于看了一个人做的图书管理系统,在界面上比我优化,在功能上比我先进,虽然他做的不是和我一个系统。看到比自己好的,不自觉地开始改进。首先是创建ODBC,从需要自己创建ODBC开始到程序生成ODBC,感觉很复杂,其实也就几行代码的问题。其次是皮肤,没有皮肤觉得界面太难看。虽然是下载的文件,但是添进去也是一个难事,还要添加一个SkinPlusPlus.h。再有就是采用列表控件,只要会了方法,输出信息非常方便。原来我程序思想是在学生信息中分为查询、添加、修改、删除等模块,现在进行统一,查询还是查询系统,添加、修改和删除融合成一个编辑系统。教师也是一样。在对于用户,也不局限于一旦创建只能修改密码,现在还可以注销账号。最后是各个功能的衔接,用菜单来调用。同时根据是否是管理员进行判定某些操作是否可用。这次课程设计同时也使我对MFC有了更深刻的认识。再也不是局限于那几个控件和某些类的派生。对不同文件之间的联系,.h和.cpp之间的联系有了更深层次的理解。以前因为知识的匮乏,总是纳闷各个文件之间是怎样作用的,现在虽然不是十分的了解,但已经能感受到其中的奥妙所在,让我感受到C+的无穷魅力。附录:源程序清单(核心部分)文件:wh.cpp#include stdafx.h#include wh.h#include MainFrm.h#include whDoc.h#include whView.h#include LoginDlg.h#include SkinPlusPlus.h#ifdef _DEBUG#define new DEBUG_NEW#
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号