1、学生学籍信息管理系统 1 作者: 日期:2 个人收集整理 勿做商业用途目 录摘 要I第一章 绪论21。1 引言21.2 本文主要工作2第二章 系统分析42.1 设计思想42.2 需求分析42.2.1 系统应用现状分析42.2。2 用户基本功能需求52.3 系统可行性分析52.3。1 技术可行性62。3.2 经济可行性62.3。3 时间可行性62.3.4 操作可行性6第三章 系统设计63.1 系统设计目标63。2 系统功能设计73.3 数据库设计83。3.1 数据库简介83。1。2 概念结构设计83.1.3 逻辑结构设计93.1。4 物理结构设计103.4 数据库的结构123。5 系统界面设计1
2、33.5。1 系统登录界面的设计133.5。2 系统主窗体133。5。3 系统新建用户模块143.5.4 学籍信息管理模块143。5。5 系部信息管理模块153。5.6 班级信息管理模块153.5。7 教师信息管理模块153。5。8 学生信息采集模块163.5.9 课程信息管理模块163.5。10 选课信息管理模块17第四章 系统实现174.1 系统的开发环境及相关技术174.1.1 系统的开发模式-C/S模式184.1。2 VISUAL C+6。0简介194.1。3 SQL SERVER 2000简介194.2 系统中主要功能的实现194.3。1 系统登录模块的实现194。3.2 系统用户管
3、理模块214.3.3 学籍信息管理模块234.3。4 学生信息采集模块244。3。5 学生选课信息管理模块264.3 系统实现过程中出现的问题29第五章 结束语29第六章 致谢29参考文献30致 谢31摘 要学生学籍管理系统是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学籍管理系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件档案,这种管理方式存在着许多缺点,例如效率低、保密性差,另外时间长了将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。作为计算机应用的一部分,使用计算机对学生学籍进行管理,具有手工
4、管理所无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高学生学籍管理的效率、实现科学化、正规化的管理。本系统使用Microsoft Visual C+ 6.0,采用SQL Server 2005来作为后台数据库,本系统主要完成对系部信息、班级信息、任课教师信息、学生信息、课程信息以有选课记录和成绩等多种数据信息的管理,包括数据库中表的录入、修改、删除等.系统还可以完成对各类信息的查询、录入、修改、删除等功能,其中学籍管理用户包括系统管理员、教师和学生。关键字:VC+ 6。0;SQL Server 2005;管理系统;学籍信息管理;软
5、件工程34第一章 绪论1.1 引言当今社会中,计算机的使用已经深入到日常工作和生活的方方面面.随着信息技术在管理上越来越深如而广泛的应用,管理信息系统的实施在技术上已经逐步成熟。管理信息系统是一个不断发展的新型学科,任何一个单位要生存要发展,要高效率地把内部活动有机地组织起来,就必须建立与自身特点相适应的管理信息系统。学生学籍管理是学校管理的重要组成部分,传统的人工方式管理方式效率低、保密性差,不利于查找、更新和维护。使用计算机对学生信息进行管理,能够极大地提高学生管理的效率,节约教育经费,这也是适应学校信息化建设发展趋势的重要因素。作为计算机应用的一部分,使用计算机对学生学籍信息进行管理,具
6、有手工管理所无法比拟的优点。例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等.这些优点能够极大地提高学生学籍管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。因此,开发这样的管理软件成为很有必要的事情。学生学籍信息管理系统其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面,对于前者要求建立起数据库一致性和完整性、安全性好的数据库。而对于后者则要求应用程序功能完备,易使用的特点.经过本人的分析,学生学籍管理系统要实现的目标是为学校提供学生管理解决方案,具体目标如下:1)提高学生信息管理效率,节约管理成本,增强学生管理的安全性.2)满足学校学生
7、管理的人员、老师和学生的不同层次和不同方面的需要。3) 为学校将来的信息化建设提供必要的支持。总之,通过该系统的建设来提高学校的学生信息管理效率,使得学校的发展能够适应当前的教育信息化建设的中体发展趋势。1.2 本文主要工作本系统是一个典型的信息管理系统,主要目标是让使用者,包括系统管理员、教师和学生,能很好地管理有关学生学籍方面的工作,比如系统管理员负责日常的学籍管理工作,如学生各种基本信息的录入、修改、删除等操作,用户的删除和修改,教师使用该系统可完成教学班级信息查询和成绩管理,而学生使用该系统主要完成选课和成绩查询等操作。论文全文共分为六章:第一章 绪论。这一章主要介绍了论文选题的引言、
8、对现有的学籍管理系统进行分析和论文的主要工作以及论文的组织,其中论文的主要工作又涉及到论文的设计目标和设计系统的功能。第二章 系统分析。这一章主要介绍了系统设计思想、可行性分析、功能和功能需求、系统的设计基础等.第三章 系统设计.这一章主要介绍了系统的总体结构设计和系统的数据库设计,其中数据库的设计包括了概念设计、逻辑设计和物理设计.第四章 系统实现.这一章介绍了系统的开发模式、开发环境以及开发环境的建立,最主要的就是实现了系统的主要模块的功能。第五章 结束语。对系统实现过程进行了总结,并对系统将来进行扩充与完善工作进行了展望。第二章 系统分析2。1 设计思想由于本系统是一个基于C/S的数据库
9、的信息管理系统,所以第一步就是需要利用SQL Server 2005建立所需要的数据库,第二步就使用Visual C+ 6.0完成该系统客户端应用程序的开发。本文中将数据库所在的服务器作为服务器端,为开发应用程序的客户端提供所需要的数据服务。当然,客户端跟服务端需要连接,具体的说就是指应用开发程序和数据库的连接,本系统主要是通过ODBC来访问SQL Server 2005数据库.2。2 需求分析按照系统开发业务分析要求和原则,在与系统管理人员的充分沟通,整理出学生学籍管理系统所需求的基本功能和用户界面的一些需求,这些需求将作为系统分析和逻辑设计的依据。2。2.1 系统应用现状分析目前,已经有相
10、当一部分学校利用计算机来实现学生学籍的管理,但是由于各方面的原因,并没完全实现信息管理化。现很多院校仍存在基于文本、表格等纸介质的手工处理,不仅使教师的工作量变大且数据繁多易造成数据丢失等不良结果,还降低了整个院校的工作效率。而学生学籍方面也需要时间在众多的资料中翻阅、查找,这也浪费了学校资源,增大了工作人员劳动量。面对这一系列的问题,总结出目前学生学籍管理系统中存在的问题:l 没完全实现信息管理化,基本上处在半人工半计算机的阶段;l 学校领导不能得到学校学生信息的及时反馈,因此不能适时指导教学方向,以至影响教育质量;l 系统维护功能太差,主要是学校缺少计算机维护方面的专业人才;l 系统的功能
11、太少,可以添加更多的模块进去,以方便学校工作;l 系统容易丢失数据,异常发生时,数据不能及时保存,数据备份和数据删除功能有待更进;l 部门之间信息交流少,信息渠道单一,不利于协调工作,容易出错.改进现有学籍管理系统的一些不足,使学生学籍管理工作科学化、规范化、程序化,促进提高信息处理的速度和正确性,使学校的信息流程和流向清晰化、合理化,第一时间把握学生信息,以提高整个教学水平。2.2.2 用户基本功能需求通过我的分析,可得出该系统的基本功能需求如下:1实现三种身份,机管理员、教师和学生;2。 能够进行新建、修改和删除用户等操作,还能够修改密码;3。 系统能够存储和修改系部信息、班级信息、任课教
12、师信息、学生信息、课程信息、选课信息管理和成绩等多种数据信息;4能够对学生学籍信息、学生基本信息、学修课程进行录入、修改、删除等操作;经过本人的考察和分析,典型的高等院校学籍管理系统包括八个模块,能够相应的实现以下主要功能:系部信息管理:包括系部信息数据的录入、修改与删除等功能;班级信息管理:包括班级信息的录入、修改与删除等功能;教师信息管理:包括任教教师信息的录入、修改与删除等功能;学生信息管理:包括学生信息的录入、修改与删除等功能;课程信息管理:包括课程信息的录入、修改与删除等功能;选课数据管理:包括学课及成绩数据的录入、修改与删除等功能;系统用户管理:包括系统用户数据的录入、修改与删除等
13、功能; 数据查询:包括教学班学生信息的查询和学生个人成绩查询等功能。 2.3 系统可行性分析可行性分析的主要目的是进一步明确系统的目标、规模与功能,调查分析系统开发背景、必要性和意义,并根据需求提出开发系统的初步方案与计划。可行性分析是对系统进行全面、概要的分析。通过调查分析,本系统设计主要有以下四个可行性,具体包括技术可行性、经济可行性、时间可行性、操作可行性.2.3.1 技术可行性本系统在Windows XP开发环境下,利用Visual C+ 6。0开发工具,并使用SQL Server 2005作为数据库管理系统,来实现学生学籍管理系统的各种功能.SQL Server 2005属于主从时式
14、的数据库服务器,这也是主从式数据库服务器的特点,服务器本身重在数据的管理,为客户端应用程序提供一致的接口。当然也可以使用SQL Server 2005为数据库管理系统,这样可以提高系统的性能,降低它的局限性.2。3.2 经济可行性采用新的学生学籍管理系统可取代原系统的手工管理工作,减少人工开支,节省资金,并且可大大提高数据信息的取得,缩短数据信息处理时间,提高学生信息的利用率,使教学质量更进了一个台阶。2。3。3 时间可行性本系统的开发时间大概需要两个月,暑假的时间正好够用,所以时间上也比较可行.2.3。4 操作可行性本系统操作简单,易于理解,只需通过简单指导,上手较快,系统管理员、教师以及学
15、生均能进行操作,运行环境要求低。第三章 系统设计3。1 系统设计目标本系统是一个典型的信息管理系统,主要目标是管理学生学籍信息,用户包括系统管理员、教师和学生,能够很好地管理有关学生学籍方面的工作,比如系统管理员负责日常的学籍管理工作,如各种基本信息的录入、修改、删除等操作,教师可查询教学班级信息和管理成绩,学生主要完成选课和成绩查询等操作.3。2 系统功能设计根据需求分析中列出的学生学籍管理系统的基本模块,设计了如下图所示的学生学籍管理系统总体结构功能示意图。学生学籍信息管理系统新建和删除用户管理员修改密码教师信息管理课程信息管理学生信息管理修改密码本教师信息录入学生成绩录入课程信息查询学生
16、信息查询个人信息查询教师信息查询课程信息查询个人成绩查询修改密码教师学生图3-1 学生学籍管理系统总体结构功能图由上述的系统总体结构图所示,将本系统的用户分成三种权限,即管理员、教师和学生,几个模块分别为:系统用户管理模块、系部信息管理模块 、班级信息管理模块、教师信息管理模块、学生信息管理模块、课程信息管理模块、选课信息管理模块和选课数据查询模块。软件的功能描述如下:(1)用户管理,三种用户包括管理员、教师和学生,用户可以修改密码,只有管理员可以添加和删除用户;(2)系部信息管理:包括添加和保存学校系部信息;修改和删除系部信息等。(3)班级信息管理:包括添加和保存新的班级信息;修改已存在的班
17、级信息;删除已有的班级信息等;(4)教师信息管理:包括添加和保存新教师的基本信息;修改已存在的教师信息;删除教师相关信息等,发布学生课程成绩;(5)学生信息管理:包括添加和保存新学生的基本信息;修改已存在的学生信息;删除学生相关信息等;(6)课程信息管理:包括添加和保存新的课程基本信息;查询课程基本信息;修改或删除已有的课程基本信息等;(7)选课信息管理:包括添加和保存新的选项课信息;修改或删除各项相关信息等,包括查询教学班名单;查询班级的各项具体信息;根据学生编号和课程编号查询成绩的各项具体信息等.3.3 数据库的结构设计在系统设计过程中,数据库的设计是系统的核心和基础,把系统中大量的数据按
18、一定的模型组织起来,提供存储、维护、检索数据的功能,使信息系统可以方便、及时、准确地从数据库中获得所需的信息。数据库是长期储存在计算机内大量的有组织的,可以共享的数据的集合,这种数据集合具有如下特点:尽可能不重复,以最优方式为某个特定组织的多种应用服务,其数据结构独立于使用它的应用程序,对数据的增、删、改和检索由统一软件进行管理和控制。从发展的历史看,数据库是数据管理的高级阶段,它是由文件管理系统发展起来的。数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(如信息要求和处理要求)。在数据库领域内,常常把使用数据库
19、的各类系统统称为数据库应用系统。3。3。1 概念结构设计概念结构设计通常是使用E-R图对它的描述工具进行设计,对需求分析阶段收集到的数据进行分类、组织(聚集),形成实体、实体的属性,标识实体的码,确定实体之间的联系类型,设计ER图。现以学生信息管理为例,通过系部和班级相关联得出学生信息管理ER图,如下图3-2所示:学生信息姓名编号班编号Email性别生日住址父母电话系编号班级信息名称编号系部信息系编号系名称属于属于图32 学生信息管理ER模型3。3。2 逻辑结构设计逻辑结构设计应该首先选择最适于描述与表达相应概念结构的数据模型,然后选择最合适的数据库管理系统。逻辑结构设计时一般要分两步进行:
20、将概念结构转换为一般的关系、网状、层次模型,并将转化来的关系、网状、层次模型向特定数据库管理系统支持下的数据模型转换; 对数据模型进行优化。本系统中逻辑结构设计主要是将概念结构设计阶段设计好的的E-R图转换成具体的数据库管理系统支持的数据模型.关系模型的逻辑结构是一组关系模式的集合,而ER图则是由实体、实体的属性和实体之间的联系三个要素组成的.所以将E-R图转换为关系模型实际上就是要将实体、实体的属性和实体之间的联系转化为关系模式,这种转换一般遵循如下原则:一个实体型转换为一个关系模式,实体的属性就是关系的属性,实体的码就是关系的码.如下图3-3所示数据库E-R概念模型。E R图向关系模型转换
21、的结果如下所示:系统用户信息 (用户名、密码);系部信息 (系编号、系名称);班级信息 (班级编号、名称);学生信息 (编号、系编号、班编号、姓名、性别、生日、住址、电话、E-mail,父母;教师信息 (编号、姓名、系编号、电话,Email);课程信息 (编号、名称、教师、学分);选课记录信息 (编号、学生、课编号、成绩);教师用户教师学生教师系部教师班级教师课程教师编号名称编号编号系编号班编号姓名号编号名称编号用户名口令编号编号编号选课包括教学教学属于教学包括教学教学包括教学包括教学图3-3 数据库E-R概念模型3。3.3 物理结构设计根据逻辑关系模型可直接设计基于某种数据库管理系统支持的物
22、理结构,我们知道关系数据库是由表构成的,所以依据系统用户信息、系部信息、班级信息、学生信息、教师信息和课程信息在数据库中建立相应的表。本系统采用的后台数据库是Microsoft SQL Server 2005数据库系统,本数据库名称为“student。mdb”,其中包含七张表,它们分别是管理员表(管理员)、系部信息表(系部信息)、班级信息表(班级信息)、学生信息表(学生信息)、教师信息表(教师信息)、课程信息表(课程信息)和选课记录表(选课记录)。各表结构分别如以下列表所示.(1)系统用户数据表(user)系统用户数据包含的数据项有用户名、密码,数据表中各字段的属性如下图所示。图34 “use
23、r”表的各字段属性(2)系部信息数据表(department)系部信息数据包含的数据项有系编号和系名称的属性如下图所示.图3-5 “department”表的各字段属性(3)班级信息数据表(class)班级信息数据包含的数据项有班级编号和班级名称字段的属性如下图所示。图36 “class”表的各字段属性(4)教师信息数据表(teacher)教师信息数据包含的数据项有编号、姓名、系编号、电话和Email,数据表中各字段的属性如下图所示。图37 “teacher表的各字段属性(5)学生信息数据表(student)学生信息数据包含的数据项有学号、姓名、性别、民族、政治面貌、身份证号、家长姓名、家长电
24、话、通讯住址、Email和备注等,数据表中各字段的属性如下图所示。图38 “student”表的各个字段属性(6)课程信息数据表(course)课程信息数据表包含的数据项有课程号、名称、教师和学分 ,数据表中各字段的属性如下图所示。图39 “course”表的各字段属性(7)选课记录数据表(selectclass)选课记录数据包含的数据项有编号、学生、课编号和成绩,数据表中各字段的属性如下图所示。图310 “selectclass”表的各字段属性3。4 系统界面设计在设计过程中,系统中包含的界面大概有以下几个,分别为系统登录界面、系统主窗体界面、系统用户管理模块、系部信息管理模块、班级信息管理
25、模块、教师信息管理模块、学生信息管理模块、课程信息管理模块、选课信息管理模块、成绩管理模块、选课数据查询模块、学生个人成绩查询界面等,具体内容如下.3.5.1 系统登录界面的设计首先要实现的就是登录界面,主要有用户名和密码,用户必须提供正确登录信息,才能启动系统主窗体。在系统登录窗体中,用户需要输入用户名和密码才可进入系统。系统登录窗体设计如下:图311 系统登录界面3.5.2 系统主窗体系统在窗体中通过菜单来执行各项功能。主菜单包括文件、系统管理、查询、系统设置、帮助等,其中系统管理、查询和系统设置又包含子菜单。系统主界面设计如下: 图3-12 系统主界面3.5。3 系统新建用户模块系统用户
26、管理模块包括新建用户,删除用户和为用户修改用户名和密码等。系统管理员可以新建和删除用户,系统新建用户的实现窗体如下:图3-13 系统新建用户窗体修改用户名和密码的窗体设计如下:图314 系统修改用户名和密码窗体3.5.4 学籍信息管理模块学籍信息管理模块包含的学生信息有学号、姓名、出生日期、籍贯、入学年份、学籍注册、所在班级、注册类型、专业等,具体的实现界面如下:图3-15 系统修改用户名和密码窗体3.5.5 系部信息管理模块系部信息管理指对系部信息数据执行添加、修改和删除等操作。系部信息管理窗体设计如下:图316 系部信息管理窗体图3。5。6 班级信息管理模块班级信息管理能够对班级信息数据执
27、行添加、修改和删除等操作.班级信息管理窗体如下:图317 班级信息管理窗体图3。5。7 教师信息管理模块教师信息管理指对开课教师信息数据执行添加、修改和删除等操作。教师信息管理窗体如下:图318 教师信息管理窗体3.5。8 学生信息采集模块学生信息采集是指对学生信息数据进行修改和保存等,采集的学生信息包括学号、姓名、民族、政治面貌等,具体的设计界面窗体如下:图319 学生信息采集窗体3.5。9 课程信息管理模块课程信息管理指对课程信息数据执行添加、修改和删除等操作。课程信息管理窗体如下:图320 课程信息管理窗体3.5。10 选课信息管理模块在学生选课窗体中,学生根据课程信息选择需要修读的课程
28、,选课记录保存在选课记录表中.在查看选择信息时,可以删除原有的选课记录,学生选课窗体设计如下:图3-21 学生选课窗体第四章 系统实现4.1 系统的开发环境及相关技术本论文中的学生学籍管理系统的主要目的是能够方便地实现学校的学籍管理.本系统主要的功能是对所有学生的学籍进行查询、修改、添加和删除。这其中包括该生的基本信息、课程信息、系部信息和班级信息等。系统的后台数据库是学生信息数据来源,应用程序中所有的操作都会记录到后台数据库系统。系统通过VC来实现各种操作以及与数据库的连接,完成对整个系统信息的查询、修改、添加和删除等。本系统的开发与运行环境如下:l 开发环境:Windows XPl 开发工
29、具:Visual C+ 6.0l 数据库管理系统:SQL Server 2005本系统在Windows XP开发环境下,采用C/S模式,利用Visual C+ 6。0作为开发工具,用SQL Server 2005作为数据库管理系统,来实现学生学籍管理系统的各个模块及相关功能,实现了本系统。4。1。1 系统的开发模式C/S模式C/S模式是一种两层结构的系统:第一层是在客户机系统上,它结合表示与业务逻辑;第二层通过网络结合数据库服务器.C/S模式主要由客户应用程序、服务器管理程序和中间件三个部分组成,下面介绍以下C/S模式的优点:l C/S交互性强。因为客户端有完整的应用程序,在出错提示、在线帮助
30、等方面都有强大的功能,并且可以在子程序间自由切换。l C/S模式提供了更安全的存取模式。由于CS配备的是点对点的结构模式,采用适用于局域网、安全性可以得到可靠的保证。l 响应速度快。由于客户端实现与服务器的直接相连,没有中间环节。l 操作界面漂亮,形式多样,可以充分满足客户自身的个性化要求。本系统是基于C/S模式开发的信息管理系统,客户机通过服务器去访问所需要的数据库。在这里客户机就是指VC开发的应用程序,服务器就是SQL Server 2005所用的服务器,系统模式图如下图4-1所示:数据库客户机服务器数据库管理系统图4-1 系统模式图客户应用程序通过本地服务器连接到SQL Server 2
31、005的数据库,访问所需要的数据信息,从而实现用户对相应的数据信息进行修改、查询和录入等操作,以达到对学生学籍方面工作的各项管理。4。1。2 Visual C+6。0简介Visual C+6。0由Microsoft开发的, 它不仅是编译器,而且是一个基于Windows操作系统的可视化集成开发环境.Visual C+6。0由许多组件组成,包括编辑器、调试器以及程序向导AppWizard、类向导Class Wizard等开发工具。 这些组件通过一个名为Developer Studio的组件集成为和谐的开发环境。Microsoft的主力软件产品。Visual C+是一个功能强大的可视化软件开发工具。
32、自1993年Microsoft公司推出Visual C+1。0后,随着其新版本的不断问世,Visual C+已成为专业程序员进行软件开发的首选工具。虽然微软公司推出了Visual C+.NET(Visual C+7。0),但它的应用的很大的局限性,只适用于Windows 2000,Windows XP和Windows NT4.0。文档为个人收集整理,来源于网络文档为个人收集整理,来源于网络4。1。3 SQL Server 2005简介SQL Server 2005是微软公司推出的大型数据库管理系统,建立在成熟而强大的关系模型基础之上,可以很好地支持客户机/服务器网络模式。SQL Server
33、2005是一个杰出的数据库平台,能够满足各种类型的企事业单位对构建网络数据库的需求,同时还具有功能强大,安全可靠等特点,可用于大型联机事务处理、数据仓库及电子商务等。它与Windows操作系统紧密集成,具有方便易用的图形界面,并提供了一套完整的管理工具和实用程序,大大减轻了管理员的工作量,使用户对数据库的操作变得非常简单,使许多以前需要手工进行处理的复杂任务,现在可以通过图形化界面和向导工具来轻松地完成.正是由于SQL Server 2005具有操作简单、功能强大、安全性高等特点,目前已经成为各类学校学习大型数据库管理系统的所选对象之一。4。2 系统中主要功能的实现在此节中主要实现的功能模块有
34、系统登录模块、系统主窗体的实现、系统用户管理模块等,下面将详细介绍。4.2。1 系统登录模块的实现首先就是系统登录窗体的实现,系统登录窗口的实现界面如下:42 系统登录窗口图实现系统登录功能的具体代码如下:void CLogin::OnOK()UpdateData(TRUE);CUserRecordset m_user;tryif(m_user。IsOpen())m_user.Close();m_user。m_strFilter.Format(”username=%s and userpwd=s,m_username,m_userpwd);m_user。Open(CRecordset:snap
35、shot,NULL,CRecordset:none);if(m_user.IsEOF()m_user.Close(); AfxMessageBox(”密码错误,请重试!”); return;else m_user.Close();AfxMessageBox(”欢迎进入学籍管理系统!”);catch(CDBException e)eReportError();return;CDialog:OnOK();void CLogin:OnCancel() CDialog:OnCancel(); HBRUSH CLogin::OnCtlColor(CDC pDC, CWnd pWnd, UINT nCtl
36、Color)HBRUSH hbr = CDialog:OnCtlColor(pDC, pWnd, nCtlColor);if(nCtlColor=CTLCOLOR_BTN) /更改按钮颜色 pDCSetTextColor(RGB(0,0,0); pDCSetBkColor(RGB(100,121,200)); HBRUSH b=CreateSolidBrush(RGB(100,121,200); return b; else if(nCtlColor=CTLCOLOR_SCROLLBAR) / pDCSetTextColor(RGB(0,0,0); pDCSetBkColor(RGB(200,
37、1,1)); HBRUSH b=CreateSolidBrush(RGB(200,1,1)); return b; else if(nCtlColor=CTLCOLOR_EDIT) /更改编辑框颜色 pDCSetTextColor(RGB(0,0,0); pDCSetBkColor(RGB(165,254,236)); HBRUSH b=CreateSolidBrush(RGB(165,254,236); return b; else if(nCtlColor=CTLCOLOR_STATIC) /更改静态文本颜色 pDC-SetTextColor(RGB(0,0,0); pDC-SetBkCo
38、lor(RGB(166,254,1)); HBRUSH b=CreateSolidBrush(RGB(166,254,1); return b; else if(nCtlColor=CTLCOLOR_DLG) /更改对话框背景色 pDCSetTextColor(RGB(0,0,0); pDC-SetBkColor(RGB(166,1,1)); HBRUSH b=CreateSolidBrush(RGB(166,1,1); return b; return hbr;4.2。2 系统用户管理模块系统用户管理模块包括新建用户,为已经存在的用户修改用户名和密码等。系统管理员可以新建和删除用户,系统新建
39、用户的实现窗体如下:图43 系统新建用户窗体实现系统新建用户功能的具体代码如下:CNuser::CNuser(CWnd pParent /*=NULL/): CDialog(CNuser:IDD, pParent)/AFX_DATA_INIT(CNuser)m_pas1 = _T(”);m_pas2 = _T(”);m_user = _T(”);/AFX_DATA_INITvoid CNuser:DoDataExchange(CDataExchange pDX)CDialog:DoDataExchange(pDX);/AFX_DATA_MAP(CNuser)DDX_Text(pDX, IDC_
40、PAS1, m_pas1);DDX_Text(pDX, IDC_PAS2, m_pas2);DDX_Text(pDX, IDC_USER, m_user);/AFX_DATA_MAPBEGIN_MESSAGE_MAP(CNuser, CDialog)/AFX_MSG_MAP(CNuser)/ NOTE: the ClassWizard will add message map macros here/AFX_MSG_MAPEND_MESSAGE_MAP()/ CNuser message handlers用户修改用户名和密码的实现界面如下:图4-4 系统新建用户窗体模块功能的实现代码如下:CP
41、AS::CPAS(CWnd* pParent /=NULL*/): CDialog(CPAS::IDD, pParent)/AFX_DATA_INIT(CPAS)m_npass = _T(”);m_nuser = _T(”);m_opass = _T();m_ouser = _T();/AFX_DATA_INITvoid CPAS::DoDataExchange(CDataExchange pDX)CDialog:DoDataExchange(pDX);/AFX_DATA_MAP(CPAS)DDX_Text(pDX, IDC_NEW_PASS, m_npass);DDX_Text(pDX, I
42、DC_NEW_USER, m_nuser);DDX_Text(pDX, IDC_OLD, m_opass);DDX_Text(pDX, IDC_OLD_USER, m_ouser);/AFX_DATA_MAPBEGIN_MESSAGE_MAP(CPAS, CDialog)/AFX_MSG_MAP(CPAS)/ NOTE: the ClassWizard will add message map macros here/AFX_MSG_MAPEND_MESSAGE_MAP()/ CPAS message handlers4。2。3 学籍信息管理模块学籍信息管理模块可以实现学生学籍信息的修改并同时
43、保存,可以修改的内容包括出生日期、籍贯、入学年份、学籍注册、所在班级、注册类型、专业等,具体的实现界面如下:图4-5 学籍信息管理窗体该模块功能实现的代码如下:IMPLEMENT_DYNAMIC(CXueji, CRecordset)CXueji::CXueji(CDatabase* pdb): CRecordset(pdb)/AFX_FIELD_INIT(CXueji)m_stuid = _T(”);m_native = _T(”);m_reg = _T(”);m_year = 0;m_type = _T(”);m_birth = _T(”);m_class = _T(”);m_nFields = 7;/AFX_FIELD_INITm_nDefaultType = snapshot;CString CXueji:GetDefaultConnect()return _T(ODBC;DSN=我的数据库0);CString CXueji::GetDefaultSQL()return _T(”xj);void CXueji::DoFieldExchange(CFieldExchange pFX)/AFX_FIELD_MAP(CXueji)pFXSetFieldType(CFieldExchange:outputColu