用MFC实现的学生平时成绩管理系统界面化
- 格式:doc
- 大小:1.30 MB
- 文档页数:49
学生平时成绩管理系统课程论文 xxxxxxxxxxxxxxxxx学院 面向对象程序设计实习报告
题 目: 学生平时成绩管理系统 学 号 姓 名 专业班级 指导教师 实践日期 目 录 一、综合训练目的与要求 ................................................... 1 二、综合训练任务 ......................................................... 1 三、总体设计 ............................................................. 1 四、详细设计说明 ......................................................... 2 (1)、登录界面的设计 ................................................... 2 (2)、菜单界面的设计 ................................................... 3 (3)、新生学生成绩的录入界面设计 ....................................... 4 (4)、学生平时成绩查询操作界面 ......................................... 5 (5)、修改学生信息窗口设计 ............................................. 5 (6)、删除窗口的设计 ................................................... 6 五、调试与测试 ........................................................... 7
(1)、学生信息以及平时成绩信息存储的问题 ............................... 7 (2)、函数和操作界面的连接问题 ......................................... 8 (3)、操作界面的美化问题 ............................................... 8 (4)、操作之后没有提示的问题 ........................................... 8 (5)、其他调试问题 ..................................................... 8 六、实习日志 ............................................................. 8
七、实习总结 ............................................................ 10 八、附录:核心代码清单 .................................................. 10 (1)、源文件代码清单(Source File) ................................... 10 (2)、头文件代码清单(Header Files) .................................. 34 1
一、综合训练目的与要求 在经过一个学期的面向对象程序设计之后,为了让学生掌握面向对象程序设计的基本方法,加深对面向对象的思想,包括封装性,继承性,多态性的理解,此次程序设计综合运用所学知识解决实际问题,将课堂的书本知识有效的在程序中体现出来,让学生更理解C++功能之强大,进一步让学生对面向对象的方法以及C++的编程思想有较好了解和认识,通过对题目设计的实战掌握应用软件的分析方法和工程设计方法,提高升序设计的能力和综合只是的运用能力,此外,此次设计培养独立开发、设计、调试、运行程序的能力,激发学生较强的自学兴趣,锻炼学生之间以及学生雨老师的沟通能力,培养学生之间的合作精神,让彼此更好的认识到合作的重要性,使学生在今后的学习中加强对合作精神的培养。
二、综合训练任务 1、培养学生自学的能力,这次实习我开始用的是QT感觉QT实在是不太理解,又转型用的MFC,虽然对MFC也不是很懂,但至少不算是陌生,开始研究MFC的各种类的创建和界面窗口的设计以及代码的编写,虽然加大了实习的难度。但更加能够突出学生的学习能力。其中用到的知识,在MFC 中的文本操作我基本不会,经过3天的研究和理解基本理解了一些简单的文本存储和文本操作。
2、培养学生养成充分利用参考书和查询手册的能力,培养学生自己独立思考,深入研究,分析问题、解决问题的能力。
3、巩固和加深对程序设计课程的理解,提高综合运用课程所学知识的能力。
三、总体设计 我选的是题目是“学生平时成绩管理系统”,开始不知道该怎么着手做,慢慢的在网上找到了一些类似的范围我参考了一下,大概一开始就是要做个登录界面,然手是是主窗口,主窗口上面要显示的是“学生平时成绩管理系统”的一些操作,例如:学生平时成绩的查询,新生平时成绩的录入,学生平时成绩的修改以及学生平时成绩的删除等等功能。 开始着手做登录框的操作界面的时候感觉好盲目的,因为自己本身的MFC操作能力就很差,做登录界面和函数的连接的时候出现了蛮多的错误。 在对学生的平时成绩的存储时又出现了自己难以解决的问题,例如拿什么存储用什么输出,开始想的是用数据库存储用SQL server2003 来读取,可是在连接数据库的时候出现问题,自己很难解决,最后转型用文本形式存储学生平时成绩记录以供用户的查询,修改,删除,等等。 在我的题目设计中,我用了4个类,AddDlg CCheck UpdataDlg Delinfo 这4个类分别来完成对学生平时成绩的录入,查询,修改,删除操作。 2
图3-1 四、详细设计说明 (1)、登录界面的设计 对于学生平时成绩管理系统的登录界面,首先就要突出这是学生平时成绩管理系统,之后和大多数登录界面相同,填入用户名和密码,截图如下:
管理员登录 用户名及密码的正误?
主界面
学生的基本信息和各科平时成绩的录入 学生的基本信息和各科平时成绩的查询 学生的基本信息和各科平时成绩的删除 学生的基本信息和各科平时成绩的修改 3
图4—1登陆界面 操作界面用了最简单的MFC语句在DOC.cpp里面写的一段代码,实现用户登录时登录名和密码的检索,本来是想把文本编辑框全部设为透明的但是做了之后效果不好就没有将动态文本编辑框设置问透明的。
(2)、菜单界面的设计 在学生管理系统的操作界面我采用了MENU菜单式的对话框实现对学生平时成绩管理系统的一些列操作选项菜单,截图如下: 4
图4-2菜单窗口 虽然背景很单调,但是点击“学生平时成绩管理”是会出现一个菜单选项,有“学生平时成绩查询”“新生平时成绩录入”“学生平时成绩修改”“删除学生平时成绩”等4个基本对学生平时成绩管理系统的操作。
(3)、新生学生成绩的录入界面设计 在新生平时成绩录入的界面我设计了学生了一些基本信息编辑框,例如:姓名,学号,性别,年级,班级等,学生的平时成绩我只涉及了几门课程而已,有:数学,英语,C++,大学物理,概率论这五门课程平时成绩的录入;界面截图如下:
图4-3学生成绩录入窗口 5
按照上面的填写新生的信息和平时成绩等信息点击“确定”之后,新生平时成绩就增添进去。这里我采用的是有文本形式存储学生的平时成绩和学生信息,以方便管理员的查询,修改,删除等操作;
(4)、学生平时成绩查询操作界面 当有新生成绩插入进去之后。就要实现查询学生平时成绩, 因为在学生平时成绩是以文本形式存储的,所以在这里也要采用读取文本的形式来提取学生的平时成绩信息,采用MFC中对文本的操作函数完成,查询界面截图:
图4-4学生成绩查询窗口 此窗口主要突出显示学生查询的对话框而已,因为考虑到学生可能有重名的情况,这里采用的是对学生学号的查询,方便查找。
(5)、修改学生信息窗口设计 6
当查询玩学生信息之后我紧接着想到的就是要创建修改学生信息的窗口,感觉修改学生平时成绩的窗口和添加学生平时成绩信息的窗口很像应该没什么区别,只是在修改操作完成之后应该是将原来的和学生信息进行修改而已,所以我的修改窗口和新生录入窗口没什么区别截图如下:
图4-6学生成绩修改系统 这个窗口如果是在你刚刚执行完查询之后就进行修改的话,修改窗口会默认为你要修改刚才查询的那个学生的信息。
(6)、删除窗口的设计 删除窗口很简单,我想的是将你要删除的学生的学号输入点击确定删除之后程序自动删除该生的相关信息界面截图如下:
图4-6学生成绩删除系统 7
在MFC中的写的代码函数名有:每一个函数又有一个类; 类如下: 五、调试与测试 在调试与测试阶段,遇到很多问题,由于对于MFC我之前并没有做过很多工作,我只能在整个实习的过程中一遍学习vc++ MFC一遍写程序,这样我就很容易在一个问题上话费特别长的时间去研究去弄明白,没有别的办法,只能一点点去网上搜索教程或或者问问别的学的好的同学,然后按照网上教程和同学教的的方法一点点尝试把问题解决。这个过程特别痛苦,但是当把问题解决的时候确实很振奋人心的,总之努力之后会有成果的结论一直是成立的,我的目标就是要把我自己的题目完成好。
(1)、学生信息以及平时成绩信息存储的问题 在开始写成绩管理系统的时候我就在想我该用什么样方式存储学生的信息和他的品时成绩信息呢。开始想的是用数据库存储,可是在数据库连接上我卡壳了两天,最后我问同学,同学给我介绍了一种简单的MFC用文本形式存储数据的方法,我就采用同学教的那种方法采用文本形式存储,没录入一个学生就创建一个文本文档,将去信息存储在里面。