1、湖北经济学院专科毕业(设计)论文 2008届普通专科毕业论文(设计) 存档编号: 毕业论文(设计)题目: 学生成绩管理系统的设计专 业: 计算机应用技术 院 系: 管理技术学院 年 级: 2005级 学 号: 0506503026 姓 名: 李 代 平 指导教师: 杨 欣 职 称: 副 教 授 47目录摘 要1第一章 概述2(一) 研究背景2(二) 研究的目地及意义2(三) 设计分析3第二章 开发工具的选择3(一) 开发工具的选择3(二) Visual Basic简介3(三) SQL语句简介4(四) ADO数据库访问技术简介5(五) ACCESS技术简介6第三章 系统分析与总体设计6(一) 系
2、统需求分析6(二) 系统体系结构设计7第四章 学生成绩管理系统数据库设计9(一) 数据库需求分析9(二) 数据库概念结构设计10(三) 数据库逻辑结构设计13第五章 学生成绩管理系统详细设计16(一)设计工程总框架16(二)登录窗体和系统主界面设计16(三)基本信息管理设计19(四) 学生成绩管理模块设计26(五)用户管理模块设计33结束语37致谢38参考文献39摘 要人类已进入21世纪,科学技术突飞猛进,特别是信息技术和网络技术的讯速发展和广泛应用,对社会的政治,经济,军事,文化等领域产生越来越深刻的影响。作为教育单位不可缺少的系统学生成绩管理系统,它的性能好坏对于学校的决策者和管理者来说都
3、至关重要。本次毕业设计开发了学生成绩管理系统,该系统由Visual BasicACCESSSQL查询语言实现。它的主要功能有院系管理,学生基本信息管理,学期信息管理,课程信息管理,课程安排管理,学生成绩管理,用户管理等。本毕业论文介绍了系统的开发过程,对学生成绩管理系统的系统分析、系统调查、功能设计、数据库设计、程序设计、系统测试和调试等进行了详细说明和分析。该系统设计完成后,通过上机运行性能良好,实现了学生成绩管理系统的所有基本功能。关键词:系统分析 数据库存设计 成绩管理 成绩查询 第一章 概述(一) 研究背景当今时代是飞速发展的信息时代,在各行各业中离不开信息处理,这正是计算机被广泛应用
4、于信息管理系统的环境。计算机的最大好处在于利用它能够进行信息管理。使用计算机进行信息控制,不仅提高了工作效率,而且大大的提高了其安全性。尤其对于复杂的信息管理,计算机能够充分发挥它的优越性。 管理信息系统是进行信息的采集、存储、加工、维护和使用的系统,它是随着管理科学和技术科学的发展而形成的。学生成绩管理系统是一个教育单位不可缺少的,它的内容对于学校的决策者和管理者来说都至关重要,所以学生成绩管理系统应该能够为用户提供充足的信息和快捷的查询手段,对学生来说可以轻松的查阅自己在校的成绩以及信息等。用人工的方式管理学生成绩,这种管理方式存在着许多缺点,如:效率低、保密性差、另外时间一长,将产生大量
5、的文件和数据,这对于查找、更新和维护都带来了不少的困难。 学生成绩管理系统提供了强大的学生成绩管理管理功能,方便系统管理员对学生成绩等信息的添加,修改,删除,查询,留言等操作,同时一样的方面学生对自己各科成绩查询,学习的交流。(二) 研究的目地及意义当代是科技的时代,科学技术突飞猛进,计算机已经不仅是在科技上应用,而且在生活中也是同样得到了广泛的应用。随着学校规模的扩大,有关学生成绩管理工作和所涉及到的数据量越来越大,需要对立性能良好的数据库管理系统对学生和学校资源进行管理。因此开发出一个不仅仅是适用于大中专院校以及其它高校通用的学生成绩管理系统是很有意义的。 开发一个学生成绩管理系统,采用计
6、算机对学生成绩进行管理,进一步提高了办学效益和现代化水平。为广大教师和学生提高工作效率,实现学生成绩信息管理工作流程的系统化,规范化和自动化。(三) 设计分析(1)管理员能够实现对整个学生信息的添加,修改,删除,查询等操作。对教师用户的添加,删除,修改等操作。(2)教师能够在一定的权限内对所有学生成绩的查询,所有教师信息的查询,对自己的联系信息进行更新,登录密码的修改。(3)学生可以在自己的权限内对自己成绩的查询,以及个人信息的查询,登录密码的修改。第二章 开发工具的选择(一) 开发工具的选择开发数据库管理信息系统需要选择两种工具,即前台开发语言和后台数据库。根据客户需求,系统功能和性能要求可
7、推知学生成绩管理系统是一个C/S(客户/服务器)结构的应用程序,前台开发语言通常可以选择Visual Basic,因为与其他开发工具相比Visual Basic具有简单易学、灵活方便和易于扩充等特点。由于Visual Basic与后台的Access数据库相结合,能够提供一个高性能的管理信息系统解决方案。所以采用Visual Basic作为开发工具,Access作为后台数据库,中间层采用ADO数据访问技术,将对数据库的操作以类的形式封装。(二) Visual Basic简介VB 是Visual Basic编程语言。1991年,美国微软公司推出了Visual Basic(可间称VB),目前的最新版
8、本是.net中文版。 Visual 意即可视的、可见的,指的是开发像windows操作系统的图形用户界面(Graphic User Interface,GUI)的方法,它不需要编写大量代码去描述界面元素的外观和位置,只要把预先建立好的对象拖放到屏幕上相应的位置即可。Basic指的是Beginners all_purpose symbolic instruction code 初始者通用符号指令代码语言。 Visual Basic有学习版、专业版和企业版三种版本,以满足不同的开发需要。学习版适用于普通学习者及大多数使用Visual Basic开发一般Windows应用程序的人员;专业版适用于计算
9、机专业开发人员,包括了学习版的全部内容功能以及Internet控件开发工具之类的高级特性;企业版除包含专业版全部的内容外,还有自动化构件管理器等工具,使得专业编程人员能够开发功能强大的组骨子里分布式应用程序。 VB是一种可视化的、面向对象和采用事件驱动方式的结构化高级程序设计语言,可用于开发Windows环境下的各类应用程序。它简单易学、效率高,且功能强大可以与Windowsr专业开发工具SDK相媲美。在Visual Basic环境下,利用事件驱动的编程机制、新颖易用的可视化设计工具,使用Windows内部的广泛应用程序接口(SPI)函数,以用动态链接库(DLL)、对象的链接与世隔嵌入(OLE
10、)、开放式数据连接(ODBC)等技术,可以高效、快速地开发Windows环境下功能强大、图形界面丰富的应用软件系统。随着版本的提高,Visual Basic的功能也越来越强。5.0版以后,Visual Basic推出了中文版,与前个版本相比,其功能有了很大提升。Visual Basic 6.0 是1998年的产品,后来又有几次的升级,现在用的大多数是SP4。(三) SQL语句简介1SQL 语句简介 SQL全称是结构化查询语言(Structured Query Language),SQL包含4个部分:(1)数据查询语言DQL-Data Query Language SELECT (2)数据操纵语
11、言DQL-Data Manipulation Language INSERT, UPDATE, DELETE (3)数据定义语言DQL-Data Definition Language CREATE, ALTER, DROP (4)数据控制语言DQL-Data Control Language COMMIT WORK, ROLLBACK WORK 2SQL的优点 (1)非过程化语言 (2)统一的语言 SQL为许多任务提供了命令,包括:查询数据,数据更新,在表中插入记录,在表中修改记录,在表中删除记录,建立,修改和删除数据对象,控制对数据和数据对象的存取 ,保证数据库一致性和完整性 ,以前的数据
12、库管理系统为上述各类操作提供单独的语言,而SQL将全部任务统一在一种语言中。(3)是所有关系数据库的公共语言 由于所有主要的关系数据库管理系统都支持SQL语言,用户可将使用SQL的技能从一个RDBMS转到另一个。所有用SQL编写的程序都是可以移植的。SQL是大多数关系型数据库用做查询语言的语言。它是可以移植的,并且容易学习使用,但是所有SQL语句都必须由数据库服务器独立地执行。这就意味着客户端应用必须把每条查询发送到数据库服务器,等待它处理这个查询,接收结果,做一些运算,然后给服务器发送另外一条查询。所有这些东西都会产生进程间通讯,并且如果客户端在另外一台机器上甚至还会导致网络开销。(四) A
13、DO数据库访问技术简介Visual Basic提供了比较丰富的访数据访问技术,如ADO、ODBC、DAO和RDO等。其中ADO是最新的数据库访问技术。它是使用更加简单,而又更加灵活的对象模型。ADO即ActiveX Data Objects 的缩写,提供对各种数据库访问的标准接口。包括的主要对象有:(1)连接对象Connection。连接时必须指定要连接到的数据源以及连接所使用的用户名和口令等信息。(2)命令对象Command。可以通过已建立的连接发出命令,对数据源进行指定的操作。(3)记录集对象Recordset。查询命令可以将查询结果存储在本地,这些数据以“行”(记录)为单位,返回数据的集
14、合被称为记录集。(4)字段对象Field。一个记录集行包含一个或多个字段。如果将记录集看做二维网格,字段将排列起来构成列。每一字段(列)都分别包含有名称、数据类型和值的属性。(五) ACCESS技术简介Access 就是关系数据库开发工具,数据库能汇集各种信息以供查询,存储和检索。那么什么叫数据库呢 数据库(Database)是由一些有意义和有关系的数据(data)所组合而成。一个数据库中,包含了许多条记录(Record),而每条记录是由多个字段(Field)所组成,不同的字段存放这不同的数据。所以数据库的严格定义是一组相关记录的集合,而字段则是最基本的数据项,也是数据库中最小的单位。在计算机
15、中用来帮我们管理数据库的系统,我们称之为数据库管理系统(Database Management System DBMS)。数据库管理系统是架构在一个或多个数据库之上,并针对数据库中的数据进行管理运用。 Access 的优点在于它能使用数据表示图或自定义窗体收集信息,数据表示图提供了一种类似于 Excel 的电子表格,可以使数据库一目了然。另外,Access 允许创建自定义报表用于打印或输出数据库中的信息。Access也提供了数据存储库,可以使用桌面数据库文件把数据库文件置于网络文件服务器,与其他网络用户共享数据库。如上所述,Access 作为关系数据库开发具备了许多优点,可以在一个数据包中同时
16、拥有桌面数据库的便利和关系数据库的强大功能。第三章 系统分析与总体设计(一) 系统需求分析学生成绩管理系统的用户是各院系(年级)负责教学管理的教师,主要功能包括院系管理、学生基本信息管理、课程设计管理和学生成绩管理等。具体说明如下:院系(年级)信息的添加、修改、删除和查询。此功能为学生的分类管理提供依据。学生基本信息的添加、修改、删除和查询。课程设置信息的添加、修改、删除和查询。学生成绩信息的添加、修改、删除和查询。(二) 系统体系结构设计根据上述的系统需求分析可总结出用户需求设计系统的体系结构系统的功能模块图如图3.1所示。图3.1 学生成绩管理系统功能模块示意图在功能模块示意图的树状结构中
17、,每一个叶结点都是一个最小的功能模块。每一个功能模块都需要针对不同的表完成相同的数据库操作,即添加记录、修改记录、删除记录以及查询显示记录信息。在本系统中,可以把功能模块分为以下三个功能集合来描述:(1)基本信息管理功能集合,包括院系信息管理和学生信息管理等功能模块在此集合中功能模块的关系如图3.2所示,其中学生基本信息管理模块是整个系统中的核心。图3.2 基本信息管理功能集合模块关系图(2)学生成绩管理功能集合,包括课程管理和成绩管理模块。此集合中功能模块的关系如图3.3所示。图3.3 学生成绩管理功能集合模块关系图(3)用户管理及权限控制功能集合,包括用户信息管理、权限控制等模块。权限控制
18、虽然不是一个独立存在的模块,但是它是贯穿在整个系统的运行过程中。在本系统中,用户管理模块的功能比较简单。在系统初始化是,有两个默认的用户。系统管理员用户为Admin,普通用户为Users,都是由程序设计人员手动地添加到数据库中,它们的默认密码为111111。Admin用户可以创建用户、修改用户信息以及删除用户;普通用户则只能修改自己的用户名和密码。用户管理功能模块的关系如图3.4所示。图3.4 用户管理功能集合模块关系图下面进行系统流程分析:图3.5 系统流程分析图第四章 学生成绩管理系统数据库设计(一) 数据库需求分析由于本系统面向的对象有两个,即系统管理员和学生,所以数据库需求分析中就要考
19、虑两方面的因素。对于系统管理员来说,他们所关心的是如何对本系统中的院系班级、课程、课程安排、学生成绩和学生进行管理,既对这些对象在数据库中进行查询、添加、修改和删除操作。因此针对管理员总结出如下需求信息。(1)管理员可以对院系班级进行查看、添加、删除、修改。(2)管理员可以对课程进行查看、添加、删除、修改。(3)管理员可以对学生进行查看、添加、删除。(4)管理员可以对课程安排进行查看、添加、删除、修改。(5)管理员可以对学生成绩进行查看、添加、删除、修改。对于学生来说,他们所关心的是登录系统后能够查看自己各科的成绩及以往的成绩,另外还应能够对个人信息进行修改。因此总结出如下需求信息。(1)学生
20、可以登录系统查看成绩。(2)学生可以查看个人信息。(3)学生可以更改个人信息。(二) 数据库概念结构设计(1) 系统中主要实体的E-R图通过以上数据库需求分析,可得出数据库中存在以下实体及其之间相互关系。院系班级实体E-R图如图4-1所示图4-1 院系班级信息实体E-R图学生实体的E-R图如图4-2所示图4-2 学生信息实体E-R图学期信息实体的E-R图如图4-3所示图4-3 学期信息实体E-R图课程信息实体的E-R图如图4-4所示图4-4 课程信息实体E-R图课程安排信息实体的E-R图如图4-5所示 图4-5 课程安排信息实体E-R图学生成绩信息实体的E-R图如图4-6所示图4-6 学生成绩
21、信息实体E-R图用户信息实体的E-R图如图4-7所示图4-7 用户信息实体E-R图(2) 实体之间关系的E-R图 实体之间关系的E-R图如图4-8所示图4-8 实体之间关系的E-R图(三) 数据库逻辑结构设计根据以上数据库需求分析和数据库的概念结构设计,就可以设计出数据库的物理表了,数据库表及其功能如表4.1所示。(1) 系统数据表及其功能表4.1 数据表及其功能数据表功能Classes存放院系基本信息Students存放学生基本信息Terms存放学期基本信息Lessons存放课程基本信息Arrangement存放课程安排信息Scores存放学生成绩基本信息Users存放系统用户信息(2) 主
22、要表描述表4.2学校院系班级基本信息表(Classes)字段名数据类型及长度说明备注Class_Id自动编号院系编号主键 非空Class_Name文本,长度50院系名称非空 UpperId数字/长整型上级院系编号非空表4.3 学生用户基本信息表(Students)字段名数据类型及长度说明备注Student_Id自动编号学生编号主键 非空Student_Name文本,长度50姓名非空Sex文本,长度2性别非空Nationality文本,长度40民族非空Birth文本,长度20生日非空Family_Place文本,长度60籍贯非空Id_Card文本,长度20身份证号非空BadgeID文本,长度40
23、学生证号非空Home_Phone文本,长度30家庭电话非空Residence文本,长度100居住地址非空Postcode文本,长度10邮政编码非空In_Date日期/时间入校日期非空Class_Id数字/长整型所在院系编号外键 引用至ClassesTitle文本,长度20职务非空Memo文本,长度200备注非空Fillin_Time日期/时间填表时间非空表4.4 学期信息表(Terms)字段名数据类型及长度说明备注Term_Id自动编号学期编号主键 非空Term_Name文本,长度50学期名称非空表4.5 课程设置信息表(Lessons)字段名数据类型及长度说明备注Lesson_Id自动编号课
24、程编号主键 非空Lesson_Name文本,长度100课程名称非空表4.6 课程安排信息表(Arrangement)字段名数据类型及长度说明备注Arrange_Id自动编号课程安排编号主键 非空Term_Id数字/长整型学期编号外键 引用至TermsLesson_Id数字/长整型课程编号外键 引用至LessonsClass_Id数字/长整型班级编号非空Teacher文本,长度50授课教师非空Hours数字/整型课时非空Lesson_Type文本,长度20课程类型(必修,选修)非空表4.7学生成绩信息表(Scores)字段名数据类型及长度说明备注Arrange_Id数字/长整型课程编号外键 引用
25、至ArrangementStudent_Id数字/长整型学生编号外键引用至 studentsScore数字/整型分数 在系统菜单中选择“工具”/“关系”,打开关系窗口,将上表添加到关系窗口中。创建关系如图4-9:图4-9 定义关系第五章 学生成绩管理系统详细设计详细设计是整个系统设计过程中最复杂也是最重要的步骤之一。经过前期的需求分析和数据库设计后,可将整个工程分为设计工程总框架、登录窗体和系统主界面设计、基本信息管理设计(包括院系管理和学生基本信息管理模块的设计)、学生成绩管理设计(包括学期信息管理、课程信息管理、课程安排管理和学生成绩管理模块的设计)和用户管理模块设计。接下来将对本系统的各
26、个子模块分别加以介绍,但是限于篇幅本文将重点介绍其中几个重要的模块,其它模块只作简单介绍。同样由于篇幅限至,不可能把各模块所有代码都列出一一分析,因此只分析一些模块的关键代码。(一) 设计工程总框架 根据Visual Basic 功能模块的划分原则,本工程需要用到如下几个模块:(1)Const 用来管理工程中的常量。(2)DbFunc 用来管理工程中与数据库操作相关的声明、变量和函数。(3)GeneralFunc 用来管理工程中一些通用的自定义函数。(4)Variable 用来管理工程中的公共变量。在工程中,除了上述所需要的模块外,还需要为每一个表创建一个类模块,将对表的所有数据库操作封装在类
27、中。类的成员变量与对应的表中的字段名相同。由于绝大多数成员函数的编码格式都非常相似,只是所使用的SQL语句不同,所以只说明类的作用不对类的成员函数及其功能进行分析。Classes类 用来管理表Classes的数据库操作,它保存为Classes.cls。Students类 用来管理表Students的数据库操作,它保存为Students.cls。同理Terms类、Lessons类、Arrangement类、Scores类和Users类都是用来管理相应表的数据库操作,保存为*.cls。(二) 登录窗体和系统主界面设计当系统运行时,首先打开登录窗体,只有有权限的用户才能进入系统。登陆成功后,将会显示
28、系统主界面。 首先设计登录窗体,登录窗体的名称为FrmLogin,如图5-1所示:图5-1登录窗体的界面布局登录窗体的属性设置:名称设为FrmLogin。BorderStyle设为1-Fixed Single。Caption设为身份验证。ControlBox设为False。StartUpPosition设为2-屏幕中心。登录窗体中控件的属性设置如表5-1所示:对象名 属性属性值Label1Caption用户名Label2Caption密码txtUserText空txtPwdText空txtPwdPasswordChar*Cmd_OkCaption确定Cmd_CancelCaption取消再设计
29、主界面,主窗体是工程的启动对象,可以在系统菜单中选择“工程”/“属性”,打开属性窗口设置启动对象。主窗体名为FrmMain。打开主窗体的设计窗口,选择“工具”菜单项中的“菜单编辑器”,对菜单内容进行编辑。菜单编辑器如图5-2所示:图5-2菜单编辑器最后,主界面如图5-3所示:图5-3 学生成绩管理系统主界面在主窗体FrmMain中添加如下代码:Private Sub Frm_Load()连接字符串Conn=”Provider=Microsoft.Jet.OLEDB.4.0;Data Source=”+App.Path+” 学生成绩.mdb;”FrmLogin.Show 1End Sub变量co
30、nn用于定义连接字符串。Provider是数据提供者。Data Source 指定数据库文件名,最后使用绝对路径。当主窗体启动时,首先设置连接字符串,然后打开“登录”对话框。如果不能通过身份验证,则不能进入系统。当选择“退出系统”菜单项时触发mn_exit_Click事件,代码如下:Private Sub mn_exit_Click() DBapi_Disconnect End End Sub函数DBapi_Disconnect()是自定义函数,它的功能是强制断开与数据库的连接。(三) 基本信息管理设计 基本信息管理的设计包括院系管理模块设计和学生基本信息管理模块设计。(1)院系管理模块设计院
31、系管理模块可以实现以下功能: 创建院系班级记录。 修改院系班级记录。 删除院系班级记录。 查看院系班级记录。由于本系统要使用树状结构来描述院系数据,所以要用到TreeView控件。TreeView控件是显示Node(结点)对象的分层列表,每一个Node对象均由一个标签和一个可选的位图组成。由于设计到图像的存储,所以还要使用另一个控件ImageList控件。ImageList控件的作用就像图像的存储室,用来为TreeView控件提供图像。在此,对TreeView控件和ImageList控件不做详细解释。在设计院系管理模块时,要分如下三个窗体:第一 院系信息编辑窗体编辑院系信息窗体可以用来添加和修
32、改院系信息,窗体名称设置为FrmClassEdit,窗体布局如图5-4所示:图5-4 窗体FrmClassEdit的布局窗体属性定义与登录窗体相似,可参见登录窗体设计。在添加院系班级时,需要在当前选择院系的下一级位置添加结点。要使用语句格式如下:SetTmpNode=FrmClassMan.TreeView1.Nodes.Add(FrmClassMan.TreeView1.SelectedItem.Key,_tvwChild,Tmp_Key,.Class_name,4,5)Add方法的功能时在Treeview控件的Nodes集合中添加一个Node对象。它的语法如下:Object.Add(rel
33、ative,relationship,key,text,image,selectedimage)第二 院系信息管理窗体院系信息管理窗体的名称设置为FrmClassMan。在窗体中添加一个ImageList控件。右击此控件,选择菜单中的“属性”命令,打开“属性页”对话框。单击“图像”选项卡,通过单击“插入图像”和“删除图像”来编辑图像列表,如图5-5所示:图5-5 设置ImageList控件的图像列表在窗体中添加一个TreeView控件。右击此控件,选择菜单中的“属性”命令,打开“属性页”对话框。将“图像列表”属性设置为ImageList1,其他属性可以根据需要设置。TreeView控件的属性对
34、话框如图5-6所示:图5-6 设置TreeView控件的属性窗体属性与登录窗体相识,院系管理窗体的布局如图5-7所示:图5-7 院系班级管理窗体布局下面分析窗体FrmClassMan中部分过程的代码。Form_Load过程:当装入窗体FrmClassMan时触发Form_Load事件,对应代码如图5-8所示:图5-8 Form_Load事件代码同样:当用户单击“添加”按钮时触发Cmd_Add_Click事件。 当用户单击“修改”按钮时触发Cmd_Modi_Click事件。 当用户单击“删除”按钮时触发Cmd_Del_Click事件。 当用户单击TreeView列表时触发TreeView1_Cl
35、ick 事件。第三 设计选择院系信息窗体 为了方便用户在其他模块中选择院系信息,就要设计一个选择院系班级的窗体,窗体名为FrmClassSel。它的布局如图5-9所示:图5-9 院系班级选择窗体布局窗体的属性如表5-2所示:窗体属性数据类型及长度说明名称FrmClassSel设置窗体名称BorderStyle1-Fixed Single设置窗体的边框属性Caption窗体的标题条文本为空ControlBoxFalse取消控件按钮StartUpPosition0-手动设置窗体弹出时,位置有用户指定表5-2 窗体FrmClassSel的属性“选择院系班级”窗体与“院系管理”窗体的界面相似。也需要使
36、用TreeView控件来显示院系班级,使用ImageList控件来管理TreeView控件中的图像信息。可以参照“院系管理”的设置方法将TreeView控件和ImageList控件添加到FrmClassSel窗体中,并设置它们的属性。“选择院系班级”窗体中很多代码与“院系班级管理”窗体中的代码相同。需要说明的是,当用户单击“确定”按钮是触发Cmd_OK_Click事件。(2)学生基本信息管理模块设计 学生基本信息管理模块可以实现以下功能: 创建学生记录。 修改学生基本信息。 删除学生记录。 查看学生基本信息。在设计学生基本信息管理模块时,也要分三个窗体设计:第一 设计学生信息编辑窗体 编辑学生
37、信息的窗体可以用来添加和修改学生的基本信息,基本信息中并不包含照片。窗体名称为FrmStuEdit。窗体FrmStuEdit的布局如图5-10所示:图5-10 窗体FrmStuEdit的布局窗体属性与登录窗体相似。下面分析窗体FrmStuEdit的触发事件。当FrmStuEdit窗体启动时触发Form_Load事件。此时将对窗体中显示的内容进行处理,如果是添加记录,则将所有的输入控件设置为空;如果是修改记录,则将要修改的记录内容显示在输入控件中。当用户单击“确定”按钮时触发Cmd_OK_Click事件。第二 设计学生信息管理窗体 学生信息管理窗体的名称为FrmStuMan,窗体布局如图5-11
38、所示:图5-11 学生信息管理窗体布局窗体属性与登录窗体相似。窗体中使用了ADO Data控件,分别为学生列表控件和学生的各项属性控件提供数据源。两个ADO Data控件的名称分别为AdoStuNameList和AdoStuDetail。在窗体的右侧部分,使用Label控件显示当前学生的基本信息,每个Label控件的DataSource属性都被设置为AdoStuDetail,DataField属性被设置为相对应的字段。ADO Data控件的属性在代码中定义。下面分析窗体FrmStuMan 的触发事件:当载入窗体是触发Form_Load事件。两个ADO Data 控件的属性在这里定义。当单击“修
39、改资料”按钮时触发Cmd_Modi_Click事件。当单击“删除学生”按钮时触发Cmd_Del_Click事件。当单击院系列表(TreeView1控件)时触发TreeView1_Click事件。当单击学生列表(DataList1控件)时触发DataList1_Click事件。第三 设计选择学生信息窗体 为了方便用户在其他模块中选择学生,设计一个选择学生信息的窗体,窗体名称为FrmStuSel。在窗体FrmStuSel中将使用到TreeView控件、ADO Data控件和DataList控件。窗体属性与选择院系信息窗体相似,窗体中主要控件的属性与学生信息管理管理窗体中对应控件的属性相似。FrmS
40、tuSel窗体的布局如图5-12所示:图5-12 选择学生窗体布局因为显示和选择院系信息、学生信息的功能在学生信息管理窗体中已经介绍过,下面介绍其他的事件触发:当单击学生列表(DataList1控件)时触发DataList1_Click事件。当单击“确定”按钮时触发Cmd_OK_Click事件。(四) 学生成绩管理模块设计学生成绩管理模块又包括学期信息管理模块、课程信息管理模块、课程安排管理模块和学生成绩管理模块。(1)学期信息管理模块设计 学期信息管理模块可以实现以下功能: 创建学期记录。 修改学期记录。 删除学期记录。 查看学期记录。在设计学期信息管理模块时,可分为两个窗体来设计:第一 设
41、计学期信息编辑窗体学期信息编辑窗体的名称为FrmTermEdit,窗体布局如图5-13所示:图5-13 窗体FrmTermEdit的布局窗体属性与登录窗体相似。当单击“确定”按钮时触发Cmd_OK_Click事件。第二 设计学期信息管理窗体学期信息管理窗体的名称为FrmTermMan,窗体的布局如图5-14所示:图5-14 窗体FrmtermMan的布局窗体中使用DataList控件显示所有学期的列表,使用ADO Data控件为DataList控件提供数据源。当窗体启动时触发Form_Load事件。(2)课程信息管理模块设计课程信息管理模块可以实现以下功能: 创建课程记录。 修改课程记录。 删
42、除课程记录。 查看课程记录。在设计课程信息管理模块时,也可分为两个窗体设计:第一 设计课程信息编辑窗体课程信息编辑窗体的名称为FrmLessonEdit,窗体布局如图5-15所示:图5-15 窗体FrmLessonEdit的布局窗体属性与登录窗体相似,窗体中的代码与学期信息编辑窗体相似。第二 设计课程信息管理窗体课程信息管理窗体的名称为FrmLessonMan,窗体的布局如图5-16所示:图5-16 窗体FrmLessonMan的布局窗体中的代码与学期信息管理窗体相似。(3)课程安排管理模块设计课程安排管理模块可以安排每个学期的课程,主要包括以下功能: 创建课程安排记录。 修改课程安排记录。
43、删除课程安排记录。 查看课程安排记录。在课程安排管理模块设计时,也可分为两个窗体设计:第一 设计课程安排编辑窗体课程安排编辑窗体的名称为FrmArrangeEdit,窗体布局如图5-17所示:图5-17 窗体FrmArrangeEdit的布局窗体属性与登录窗体相似。当单击“确定”按钮时触发Cmd_OK_Click事件。第二 设计课程安排管理窗体课程安排管理窗体的名称为FrmArrangeMan,窗体的布局如图5-18所示:图5-18 窗体FrmArrangeMan的布局在编辑课程安排信息时,需要选择学期和班级信息。当窗体启动时触发Form_Load事件。(4)学生成绩管理模块设计学生成绩管理模
44、块可以实现以下功能: 创建学生成绩信息。 修改学生成绩信息。 删除学生成绩信息。 查看学生成绩信息。 查看学生总成绩排名表。学生成绩管理模块的设计,可分为三个窗体设计:第一 设计学生成绩编辑窗体学生成绩编辑窗体的名称为FrmScoresEdit,窗体布局如图5-19所示:图5-19 窗体FrmScoresEdit的布局窗体属性定义与登录窗体相似。Modify时公共变量。当装入窗体时触发Form_Load过程。当单击“确定”按钮时触发Cmd_OK_Click事件。第二 设计学生成绩管理窗体学生成绩管理窗体的名称为FrmScoresMan,窗体布局如图5-20所示:图5-20 窗体FrmScoresMan的布局窗体中使用DataGrid控件显示满足条件的学生成绩记录,使用ADO Data 控件提供数据源。第三 设计学生成绩排名窗体学生成绩排名窗体的名称为FrmScoresSort,窗体布局如图5-21所示:图5-21 窗体FrmScoresSort的布局窗体中使用DataGrid控件显示满足条件的学生总成绩记录,使用ADO Data控