软件实习项目四——简单学生管理系统的实现
文章目录
前言
学生管理系统就是最后一个软件实习的项目了。这个项目的要求很高的:
1.实现一个简单的学生信息管理的程序StudentInfo。要求系统能为客户提供下列各项服务:
2.教学管理人员能够使用StudentInfo程序对学生基本信息、课程信息进行管理,包括数据的添加、修改、删除和浏览;
3.能够对学生选课进行管理,包括添加学生选课信息、录入成绩;
4.能够使用查询功能,快速查看到指定学生或指定课程的基本信息以及所指定学生的选课信息;
5.能够对学生选课情况进行简单的统计,包括所选的总的课程数、总学分数及平均成绩。
6.要注意添加学生基本信息、课程信息相关数据时,学号和课程号不能重复;还有在添加学生选课信息时,要求该学生和课程必须是存在的,而且不能添加重复的选课信息。
7.提供友好的交互界面,可以方便用户进行功能选择,实现信息的管理和查询,并可清晰地显示相关信息。
最后我就只实现了最基本的增删改的功能,查找功能忘了。。。。。。
一、基于MFC来开发。
真的是MFC太难了,网络上还没有资源,所以我就只能学到最为简单的MFC操作。
不过真的学到了很多吧。通过这一个小小的项目,我们可以完成登陆,查询,修改部分信息。但是有一点美中不足的是,我们这个实验并没有链接数据库,所有的数据都必须保存在本地,然后在那个界面上实现基本的操作。
二、具体实现的功能内容以及相关知识。
1.登录界面的设置
登录界面所需要实现的功能其实是比较简单的。我们只需要实现普普通通输入用户名和密码,然后登录进去就可以了。如果输入不正确的话会显示提示的窗口。
所需要的MFC组件有Button按钮组件,Static Text固定文本组件 ,Edit control编辑窗口组件。按钮的可以设定名字为登录,然后文本组件显示的是用户名和密码。编辑控制窗口的话,就是用户输入账号和密码的地方。
void CStudentSystemDlg::OnBnClickedButtonLogn()
{
// TODO: 在此添加控件通知处理程序代码
CString suser, spwd;
GetDlgItemText(IDC_USERNAME, suser);
GetDlgItemText(IDC_PASSWORD, spwd);
BOOL IsSuccess = !suser.CompareNoCase(_T("ZHY")) && !spwd.CompareNoCase(_T("1508106423"));
if (IsSuccess)
{
ShowWindow(SW_HIDE);
SystemDLG dlg;
dlg.DoModal();
MessageBox(_T("454"));
}
else
{
MessageBox(_T("用户名或者密码不正确"), _T("登陆失败"));
}
}
2.基本信息界面的显示
界面显示的话我们所需要用到的是主要都是与数据有关的。使用相关的MFC工具是LIst control。在登录界面假定我们登录成功的话是会弹出那个数据库的窗口的,这时候需要的就是那个弹窗函数,我们首先要双击页面框的最顶部,然后添加一个类函数,然后增加相关的类,然后系统默认设置这个类为全局变量,我们可以用作两个窗口之间的传值。弹出窗口需要的是,在最顶部的项目之中选择类向导,然后添加DoDataExchange函数和onInitDialog函数,这个其实为了点击窗口可以初始化的函数,也就是读入数据。其中的m_List就是我们所需要的比较重要的全局变量。
3.基本功能的实现。
想要实现增加删除和修改功能的话,还是需要弹出窗口,然后继续两个窗口赋值的。
下面的代码就是实现基本功能的相关代码。
void SystemDLG