学籍管理系统(范爽爽毕业设计)_第1页
学籍管理系统(范爽爽毕业设计)_第2页
学籍管理系统(范爽爽毕业设计)_第3页
学籍管理系统(范爽爽毕业设计)_第4页
学籍管理系统(范爽爽毕业设计)_第5页
已阅读5页,还剩75页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第 1章 系统简述人类已经跨入了新世纪, 正在进入信息时代。 我国国民经济和社会发展第十个五年计 划将国民经济和社会信息化作为覆盖现代化建设全局的战略举措,要求加速发展信息产 业,大力推进信息化。 现在信息技术的应用越来越普及,不但促进了社会的高速发展, 也 改变着人们的工作、 学习、 生活和娱乐的方式以及思想观念。随着计算机的日益普及, 计 算机软件无处不在。 软件在计算机的发展和应用中至关重要, 在人类进入信息化社会时成 为新兴信息产业的支柱。 应用软件是在特定领域内开发,为特定目的服务的一类软件, 而在事务管理、 办公自动化方面的软件在企事业机关迅速推广, 带给了我们惊人的工作效 率。

2、为了加深对软件工程及数据库相关知识的了解, 掌握相关的开发工具。 本人选择了 “学 籍管理系统”作为此次毕业设计。该 “学籍管理系统” 采用了当今最热门的编程工具 visual basic。 整个系统具有界面简 单大方,功能强大,易操作,易扩充,安全性高等特点。该系统适合各个院校及用以学生 的学籍管理及日常事务的处理。1.1任务概述a. 为了学籍管理系统更完善;b. 为了教学办公室对学生档案的管理更方便通过本系统软件,能帮助教研人员利用计算机,快速方便的对学生学籍管理进行管 理、 输入、 输出、 删除、 修改、 查询的所需操作, 使散乱的人事档案能够具体化、 直观化、 合理化。本软件适用于教育

3、界,对学生的学籍可以随时输入、输出、删除、修改、查询。 1.2 开发工具的选用对于此学籍管理系统的开发,我选择 VB 作为其开发工具。Visual Basic 是一个强大的 Windows 平台上的开发工具,是基于 Basic 的可视化的 程序设计语言。 Visual Basic 6.0比老版本 Visual Basic 4.0增加了许多新功能。 Visual Basic 6.0的变量几乎可以存储任何东西,它包括:数值型、字符型、日期型、逻辑型、变体型、 对象型等变量类型,而且变量类型可以转换。对于一个相当大型的应用程序,可以引入 MDI 窗体, 一个应用程序允许有一个 MDI 父窗体和多个

4、MDI 子窗体。对象(Object 是 面向对象的程序设计(OOP 技术中的重要概念,具有封装性(Encapsulation 、继承性 (Inheritance 和多态性(Polymorphism 。类模块(Class Module的三大要素是:属性 (Properties 、方法(Methods 和事件(Events 。VB6.0的特点:VB 主要功能特点如下:1. 具有面向对象的可视化设计工具2. 事件驱动的编程机制3. 提供了易学易用的应用程序集成开发环境4. 结构化的程序设计语言5. 支持多种数据库系统的访问6. OLE 技术7. Active 技术8. 完备的 Help 联机帮助功能

5、VB6.0新功能特点:1. 新增控件2. 语言新功能3. 数据库功能的增强4. 增强网络功能5. 新增了多个应用程序想导1.3 数据环境本学籍管理系统采用 Microsoft 的 Access 2000数据库。1. 数据库数据库 (DataBase ,DB是存储在计算机内、有组织的、可共享的数据的集合。其目的 是为了便于计算机快速查询与检索。一个数据库可以分解为若干个记录(Record ,每一 个记录又包含若干字段(Field 。数据库有多种结构,如文件型(Flate file 、关系型 (Relational、 层次型 (Hierarchical、 网络型 (Inter base与面向对象型

6、 (Object oriented database等。这种集合具有以下特点: 以一定的数据模型组织数据,数据尽可能不重复。 以最优方式为某个特定组织的多种应用服务。 其数据结构独立于使用它的应用程序。 对数据的定义、操纵和控制,由数据库管理系统统一进行管理和 控制。 2. 数据库系统数据库系统是以数据库为核心, 并以管理为目的的计算机系统。 他由计算机硬件和计 算机软件组成。计算机硬件资源包括主机和输入 /输出设备。数据库系统的硬件应具有足够大的安全 的磁盘等直接存储设备, 用于安全地存储庞大的数据; 具有较高的通信能力, 以提高数据 传送率;要求数据联网,实现数据共享。软件系统包括操作系统

7、、 数据库管理系统及其开发工具和在此支持下建立起来的数据 库和应用程序。Microsoft Access 是基于 Windows 平台设计的数据库管理系统。 Access 2000关 系数据库是数据库对象的集合。 数据库对象包括:表 (Table、 查询 (Query、 窗体 (Form、 报表 (Report、 数据访问页 (Page、 宏 (Macro和模块 (Module。 在任何时刻, Access 2000只能打开并运行一个数据库。 但是, 在每一个数据库中, 可以拥有众多的表、 查询、 窗体、 报表、 数据访问页、 宏和模块。 这些数据库对象都存储在同一个以 MDB 为扩展名的数据

8、库 文件中Access 2000提供的这七种对象分工极为明确,从功能和彼此间的关系角度考虑,这 七种对象可以分为三个层次:第一层次是表对象和查询对象,它们是数据库的基本对象, 用于在数据库中存储数据和查询数据。 第二层次是窗体对象、 报表对象和数据访问页, 它 们是直接面向用户的对象, 用于数据的输入输出和应用系统的驱动控制。 第三层次是宏对 象和模块对象, 它们是代码类型的对象, 用于通过组织宏操作或编写程序来完成复杂的数 据库管理工作并使得数据库管理工作自动化。常用的数据库包括 Access 、 Oracle 、 SQL Server、 dBase 等。对于一般的系统设计, 使用 Acce

9、ss 数据库较好,原因如下:1.相对其它数据库, Access ODBC驱动程序所支持的指令最齐全。 2.Access ODBC驱 动程序执行效率远高于其它 ODBC 驱动程序。3. 微软主要的开发工具(VB 、 VC 等及应用程序(Office 系列均以 ACCESS 为数据 库。因此我们选用 ACCESS 数据库。第 2章 系统需求分析需求分析的任务是确定系统必须完成的工作, 也就是对目标系统提出完整、 准确、 清 晰、具体的要求。首先确定系统的综合需求,这些需求包括:1、功能需求2、性能需求3、环境需求2.1 软件需求分析1、 数据精确度查询时应保证查全率,所有相应域包含查询关键字的记录

10、都应能查到。2、 时间特性一般操作的响应时间应在 1-2秒内,对软磁盘和打印机及条形码刷卡服务响应时间也 应在可接受的时间内完成。3、 适应性对前面提到的运行环境要求不应存在困难。1、 硬件环境奔腾 133,16兆以上内存的 pc 机。打印机:可选2、 软件环境各 WINDOWS 操作系统。2.2 用户需求分析经过详细的调研, 并多次与学生档案管理的老师进行研讨后, 首先加深了对学生学籍 管理业务的深刻了解, 其次在从分熟悉学生学籍管理业务的同时, 将整个学籍管理的业务 流程描述如下:1 新生入校, 首先报到并进行注册登记, 然后到财务部门交费。 根据学生被录取的 专业,持缴费单到所在系部注册

11、。2 到系部注册后,根据选报专业分配到班级。3 进入正常的大学生活, 参加各种教学活动, 学期期末要求每位同学参加各科的期 末考试。4 考试结束, 由各系或部将每位同学的考试成绩及其他一些相关信息记录至每个同学的档案中。根据以上总结,得出其现行的业务流程如图 2-1所示。 图 2-1 现行学生学籍管理业务流程图构造系统的逻辑模型的工具是数据流图和数据字典。数据流图中没有任何具体的物 理元素, 只是用来描述信息在系统中的流动和处理情况。 数据流图共有四种基本符号:矩 形表示数据的源点或终点(或称为外部项 ,圆或椭圆表示变换数据的处理,向右开口的 矩形表示数据存储, 箭头表示数据流, 即特定数据的

12、流动方向。 根据现行学生学籍管理的 业务流程, 首先确定数据流图中的源点和终点都选定为学生, 如此就得到学籍管理系统的 基本系统模型,如图 2-2所示。 图 2-2 学生学籍管理系统的基本系统模型根据基本系统模型,对其逐步细化,得到描绘逻辑系统细化后的数据流图,如图 2-3所示。 图 2-3 学籍管理系统数据流图为了更进一步描绘系统的逻辑模型, 在得出系统的数据流图后要对图中的数据信息进 行如:学生信息、学号、班级信息、课程信息、成绩等作进一步的描述,这就需要定义数 据字典, 才能把现有的系统描述清楚。 数据字典是关于数据信息的集合, 也就是对数据流 图中包含的所有元素的定义的结合。 一般来说

13、, 数据字典应该由四类元素的定义组成:数 据流、数据流分量(即数据元素 、数据存储、数据处理。图 2-4给出了系统的主要数据元素的数据字典卡片, 以具体说明数据字段卡片中相关 数据的含义。 图 2-4(a 图 2-4(b 图 2-4(c 图 2-4(d 图 2-4(e 图 2-4(f 图 2-4(g 图 2-4 系统主要数据元素的数据字典通过多方了解和调查, 在现行的业务处理流程和数据流图的基础上, 就可以基本确定 目标系统要达到的目标了。在经过多方了解和调查后, 基本清楚了学籍管理系统的功能需求, 即系统开发的总体 任务是实现学生信息的系统化、 规范化和自动化。 系统功能分析是在系统开发的总

14、体任务 的基础上完成的。此学籍管理系统需要完成的功能主要有:1 数据添加功能:对于新生报到,系统必须具有班级的建立、课程的设置,如果新增专 业,则能添加新专业,期末学生的考试成绩及奖惩信息必须能够录入。2 数据修改功能:当上述资料发生变化或有错误信息输入时, 应能够及时对数据进行修 改和补充。3 数据删除功能:当学生毕业、转学或退学后,可删除该生的相关信息。4 数据查询功能:该系统的主要功能之一即根据用户提供的相关信息, 能够及时查找出 对应的学生信息,系统应该提供多种查询方法,以便满足用户的不同需求。5 数据打印功能:学生基本信息和成绩录入后应可以打印出来形成文字档案, 转入学生 档案,这也

15、是学籍管理系统必须具备的功能。第 3章 学籍管理系统的概要设计为了实现目标系统,最终必须设计出组成这个系统的所有程序和数据库,对于程序, 则首先进行结构设计,具体设计方法如下:(1采用某种设计方法,将一个复杂的系统按功能划分成模块。(2确定每个模块的功能。(3确定模块之间的调用关系。(4确定模块之间的接口,即模块之间传递的信息。系统的概要设计是以模块为基础的, 在需求分析阶段, 通过某种分析方法把系统分解 成层次结构。在设计阶段, 以需求分析的结果为依据,从实现的角度划分模块,并组成模 块的层次结构。3.1 模块的划分及功能描述根据系统需求,结合实际情况,经过分析,系统应包括以下几个方面。1、

16、 用户类型本系统的用户分为两类:超级用户,只读用户和普通用户。对于超级用户, 即整个系统的管理人员, 他可以对系统中的所有的学生信息进行浏览、 查找,而且可添加、修改和删除学生记录,也可以使用相应的报表功能。只读用户是指当前系统中所有信息的查阅者,该类用户只能对所有的信息进行浏览, 查询,不能对系统信息进行添加、删除、修改等管理。普通用户只有其特定的权限, 通过设置其权限, 可以使同超级用户一样管理整个系统, 也可以使其只对系统或学生档案与班级或课程与成绩进行管理。2、 信息浏览对于所有用户,都能够浏览所有信息,而且系统中提供了多种浏览方式:按所在专 业浏览和按所在班级浏览。 在浏览过程中如果

17、对自身信息有问题, 不能自行修改其中有误 的信息,必须向系统管理人员报告,只有系统管理人员才能对其信息进行修改。3、 查询此部分功能对所有用户开放。 如果浏览部分所提供的浏览方式不能满足管理人员的要 求, 那么用户可在现有的信息中进行查找, 以便找到满足条件的学生信息, 以便进行浏览。 该部分的功能提供了对所有的字段进行精确或者模糊查找的功能。4、 学生信息管理此部分功能只对超级用户开放。 如果学生基本信息改变, 或学生有所变更, 那么超级 用户可根据具体情况,对学生进行管理,可添加、删除或者修改某个学生的信息。 5、 报表此部分功能只对超级用户和普通用户开放。 他们在查看学生信息的同时, 可

18、对学生基 本信息进行报表输出和打印。根据以上分析, 在此将本学生学籍管理系统分为用户管理、 学生信息管理、 班级管理、 班级课程管理和成绩管理五个功能模块。(1用户管理模块主要对使用本系统的用户进行如下管理:添加新用户对已有的用户进行更改密码重新登录本模块只有超级用户才能使用,学生用户不能进入。(2学生信息管理模块主要是对学生信息(如学号、姓名、性别、家庭住址等进行管理。本模块又分为五个子 模块:录入学生信息查询学生信息修改 /删除学生信息打印学生信息录入学生信息模块:录入学生的学号、姓名、性别、政治面貌、班级、专业、家庭地址、邮政编码、出生 日期、联系电话等信息。录入第一条记录后,系统会自动

19、进入下一学号的录入页面(学号自动加一 ,减轻了 手工劳动并避免了许多错误的发生。若录入的学号或自动加一生成的学号与数据库中的记录重复,则会自动转入修改页 面。修改完成后同样也会自动进入下一学号录入页面。本模块只有超级用户才能使用,学生用户不能进入。查询学生信息模块:可从学号、姓名、所在班级或专业四种查询方法任选其一进行查询学生信息。 支持模糊查询!例如:在姓名中输入“小” ,则查询结果为姓名中包含有“小”的学生。修改 /删除学生信息模块:首先使用查询功能查询出需要修改 /删除的记录,然后进行修改 /删除操作。可以批量删除记录。打印学生信息模块将查询结果以我们常见的成绩表形式打印出来,并可以自定

20、义打印格式。(3班级管理模块主要是对学生所在班级进行管理。本模块分为三个子模块:添加班级浏览班级信息修改 /删除班级(4班级课程管理模块主要是对学生所在班级课程进行管理。本模块分为两个子模块添加基本课程设置班级课程信息(5学生成绩管理模块主要是对学生成绩进行管理。本模块又分为六个子模块 :录入学生成绩查询学生成绩修改 /删除学生成绩打印学生成绩计算总分录入学生成绩模块:录入某次考试中一科或多科的成绩。查询学生成绩模块:提供三种方式查询学生成绩:按学号查询、按姓名查询和按班级查询。按学号和姓 名查询是指首先选择要查询的学生的学号和姓名, 然后查询这一次考试中的某一科或多科 的成绩, 这种方式适合

21、某一次考试的横向比较; 按班级查询是指首先选择要查询成绩的某 一班, 然后查询这个班的某次或多次考试的成绩, 这种方式适合于科任老师对所有学生的 成绩进行纵向比较和评估。学生成绩修改 /删除模块:修改 /删除某次考试中某个学生的成绩。计算总分模块:自动计算各科总分。其中,学生成绩查询不需登录即可使用。在这几个主模块中, 我主要负责登录管理、 学生档案管理和班级管理这三个模块的设 计。3.2 概念模型设计通过需求分析。我们已经基本了解了用户对处理的 要求,下面我们将分析用户对数 据的要求。为了把用户的数据清晰明确的表达出来,系统分析员通常建立一个概念性的数学模 型。概念性数学模型是一种面向问题的

22、数学模型,是按用户的观点来对数据和信息建模。 最 常 用 的 表 示 概 念 性 数 据 模 型 的 方 法 是 实 体 -联 系 方 法 (Entity-Relationship Approach 。 这种方法用 E-R 图描述现实世界中的实体,而不涉及这些实体在系统中的实 现方法,该方法又称为 E-R 模型。 E-R 图中共有三种符号:实体、属性和联系。通常实体 用矩形来表示,属性用椭圆或圆角矩形来表示,联系用菱形来表示。联系又分为一对一、 一对多和多队多三种类型。经过上面的分析,能够提取出以下几个实体:学生、课程、班级等。他们的实体图 分别如图 3-1、图 3-2、图 3-3所示。11

23、图 3-1 学生实体图 图 3-2 课程实体图 图 3-3 班级实体图在找出所有实体的基础上, 需要进一步分析各实体之间的联系。 经过分析两两实体间 的联系,然后进行合并,得出所有实体的联系及 E-R 图,如图 3-4所示。 12图 3-4 学籍管理的 E-R 图在以上的 E-R 图中可以看到, 学生和课程两个实体之间联系的类型是多对多的, 其他 实体之间的联系类型都属于一对一或一对多的联系。根据以上各实体图和学籍管理系统的 E-R 图,经过转换,可以导出各个关系。其转 换规则为:首先每个实体应转换为一个关系, 有属性的联系也应转化为一个关系, 然后需 要给出每个关系的关键字。根据以上规则,直

24、接得出所有关系。学生(学号、姓名、性别、政治面貌、出生日期、专业、班级、家庭住址、联系电话、 邮政编码、备注关键字为学号。课程(课程号、课程名、类型关键字为课程号。班级(班级、专业、年制、所属系、班主任、人数关键字为班级。成绩(学号、姓名、班级、学期、课程名、成绩关键字为学号和课程名。在考虑系统安全的前提下,需要增加用户关系和使用关系,其关系模式如下:用户(用户名、密码、用户 ID 关键字为用户名。3.3 软件系统结构的设计根据系统分析得到的现行业务处理流程, 在反复的研究后, 首先得到目标系统即学 籍管理系统的业务流程,其处理流程如图 3-5所示。 图 3-6 学籍管理系统的业务流程13针对

25、新的处理流程,现具体描述如下:1 用户登录:对系统进行初始化设置,包括对专业、课程和班级的设置。2 新生报到:按专业分班进行教学,并为每位新同学分配学号,然后对学生基本信息进 行录入。3 学生分配到班级、领教材开始新的大学生活。4 用户对学生在校期间得到的奖惩信息进行记录, 并可以对基本信息发生变化的学生在 系统中进行修改。5 期末考试结束 , 用户把每个学生的考试成绩进行录入、修改、查询。根据系统分析阶段得到的数据流图,采用软件设计的概念和原理,在反复的研究后, 在保证系统基本功能要求的前提下,结合系统新的业务流程确定系统必须具备的所有功 能,由此得出学籍管理系统的系统功能结构图,如图 3-

26、7所示。 14图 3-7 学籍管理系统功能结构图3.4 数据库的设计在需求分析阶段已完成了系统的数据分析。 根据数据分析阶段建立的概念模型, 已经 得出满足第三范式的若干关系描述, 该阶段的主要工作就是把前一阶段的成果转化为具体 的数据库。 数据库的设计指数据存储文件的设计, 一般把数据库的设计分为数据库的逻辑 设计和数据库的物理设计两个步骤。数据库的逻辑设计即把得到的满足第三范式的关系转化为特定的数据库管理系统下 的数据表。根据前面得到的各个关系,现把它们转化为数据表。1 学生信息表:学号、姓名、性别、政治面貌、出生日期、专业、班级、家庭住址、联 系电话、邮政编码、备注 。此表共有 11个字

27、段,由于在校所有学生中,不可能存在 两个学生的学号相同,所以在本表中学号作为学生信息表的主键。2 课程信息表:课程号、课程名、类型。此表以课程号为主键。3 班级信息表:班级、专业、年制、所属系、班主任、人数。此表共有 6个字段,以班 级名为主键,用于记录学生所在班级的信息。4 成绩表:学号、姓名、班级、课程名、学期、成绩。此表共有 6个字段,以学号和课 程名共同为主键,用于记录学生在校期间的各科考试成绩。5 用户表:用户名、密码、用户 ID 。此表用于系统对操作员的设置。在完成数据库的逻辑设计后, 即可开始数据库的物理设计。 基于以上数据库的逻辑设 计,考虑程序设计的简易性及通用性,本学籍管理

28、系统采用迷 Microsoft 的 Access 2000数据库,并在其下创建数据表,其结构分别如下: 学生信息表, 共有 11个字段, 分别为:学号、 姓名、 性别、 政治面貌、 出生日期、 专业、班级、家庭住址、联系电话、邮政编码、备注 。见表 3-1。表 3-1 学生信息表结构 15 课程信息表,本表有 3个字段:课程号、课程名、类型。见表 4-2。 班级信息表,共有 5个字段:班级、专业、所属系、班主任、人数。见表 3-3 成绩信息表, 共有 5个字段分别为:学号、 姓名、 课程名、 学期、 成绩。 见表 4-4。第 4章 学籍管理系统详细设计在系统的概要设计中,已将系统划分为多个模块

29、,并将它们按照一定的原则组装起 来, 同时确定了每个模块的功能及模块与模块之间的外部接口。 详细设计主要是确定每个 模块具体执行过程。4.1 系统框图经过需求分析与概要设计,现可得出系统的模块结构图,如图 4-1 所示。16 图 4-1 软件系统的模块结构图4.2 程序流程图根据软件系统的模块结构图,可得出相应的程序流程图,如图 4-2所示。 图 4-2 软件系统主程序的程序流程图第 5 章 系统的实现5.1 系统界面的设计系统的实现对本系统而言即是用 Visual Basic 6.0 编写程序完成系统的所有功能。 以下 分模块来介绍系统各窗体的设计。在窗体上主要布置两个标签、两个文本框、两个

30、命令按钮,分别设置它们的属性:窗 体标题为“登录” ,两个标签的标题分别为“用户名”和“密码” ,命令按钮的标题分别为 “立即登录”和“退出登录” 。设置后的界面如图 5-1所示。图:登录界面图 5-1系统登录窗体的设置图首先, 在窗体上一个状态栏控件, 使用状态栏前必须打开 “工程” “部件” 对话框, 选择“ Microsoft Windows Common Controls 6.0”将控件添加到工具箱,然后在状态栏属 性的窗格设计中插入四个窗格, 并分别填写文本;其次,打开菜单编辑器, 按照总体设计 的功能结构图设置菜单项,如图 5-2所示,设置后的主窗体界面如图 5-3所示。18 图

31、5-2 菜单编辑器主窗体图 5-3 主窗体的设置效果图用户管理模块只有合法的管理员, 即超级用户, 才能对此模块进行操作, 他可以添加 新的用户,也可以对已有用户的密码进行修改。1、 添加用户首先,在窗体上布置两个命令按钮、 三个文本框、三个单选框和三个复选框,其设置 效果如图 5-4所示。图:新增用户图 5-4 用户管理的设置效果图通过运行此窗体, 可以添加新的用户, 并可以通过单击单选框来确定用户类别, 并设 置相应的权限。如选择超级用户, 则复选框自动被全选中, 即用户可以对系统所做的任何操作都不受 任何限制; 如选择只读用户, 这用户只可以对系统中的信息进行浏览和查询, 不可以对其 进

32、行修改、 删除等操作; 如选择普通用户, 则可以通过对复选框的选择来确定用户的管理 19权限。2、 修改密码在这个窗体中放置了四个标签、 四个文本框和两个命令按钮。 其中四个标签的标题分 别为“请输入用户名” 、 “请输入旧密码” 、 “请输入新密码”和“请确认新密码” ,两个命 令按钮的标题为“确认”和“取消” 。设置界面如图 5-5所示。修改密码时需输入需要修改的用户名和密码, 然后输入新密码, 并对输入的新密码进 行确认,确认一致后,将出现对话框提示“密码修改成功” ,而且会把修改后的结果送入 数据表中。 图 5-5 修改密码界面学生档案管理模块分为 3个之模块:添加 /修改学生档案浏览

33、学生档案查询学生档案1、 添加学生档案模块的设计通过此模块可以添加学生的学号、 姓名、 性别、 政治面貌、 班级、 专业、 家庭地址、 邮政编码、出生日期、联系电话等信息。学生档案的添加是按学号进行的, 一般新生报到后, 由教务处根据学生所在专业分 配学号, 然后依次把学生档案输入到相应的数据表中, 供以后进行其他数据的处理, 如成 绩的输入、档案的查询、浏览等使用。当录入第一条记录后,系统会自动进入下一学号的录入页面。此模块的界面设计如图 5-6所示。20图 5-6 添加学生档案界面2、浏览学生档案模块的设计首先,在窗体中放置一个工具栏、一个数据网格控件、一个 Tree View和两个 Im

34、ageList 。 工具栏已在添加状态栏的同时被添加道工具箱中,首先在工具栏属性的按钮 设置中插入四个按钮,并分别设置其标题为“查找” 、 “修改” 、 “删除” 、 “打印” ;数据网 格、 Tree View和 ImageList 在使用前应先通过 “工程” “部件” 选择 “ Microsoft Windows Common Controls- 6.0”添加到工具箱中;工具栏中的图片通过 ImagiList 的属性页对话 框选择“图像”标签来添加,其界面设置如图 5-7所示。学生档案的浏览是按学生所在专业和班级进行浏览, 当单击 Tree View 时数据网格中 显示相应专业的所有学生的

35、信息, 而双击时则显示相应班级所有学生的信息, 如果需对学 生信息进行修改,则点击工具栏上的修改按钮,打开图 5-6所示界面,即可对学生信息进 行修改。 图 5-7 学生档案浏览界面3、学生档案查询模块的设计学生档案查询窗体主要有五个文本框和两个命令按钮, 如图 5-8所示。 在此界面中, 用户可以分别按照学号、 姓名、 班级、专业和姓名关键字进行查询学生信息。 输入相关信 息后,点击“确定”命令按钮,可打开如图 5-7所示的窗体,且在数据网格中显示所要查 询的结果。图:学生 档案查询图 5-8 学生档案查询界面班级管理模块有分为 3个之模块:添加班级浏览班级查询班级1、 添加班级模块的设计添

36、加班级的窗体设计如图 5-9所示,选择“班级管理 |添加班级”菜单即可打开 此窗体。通过此模块可以添加班级信息,并将信息输入到相应的数据表中。图:添加班级图 5-9 添加班级界面图2、 班级浏览模块的设计班级浏览界面的设置如同学生档案浏览的设置,其界面图如 5-10。在此窗体中,通 过单击 Tree View 将在数据网格中显示相应专业的所有班级的信息, 而双击时则显示相应班级的所有相关信息。如果需对班级信息进行修改,则点击工具栏上的修改按钮,打开图 5-9所示界面,即 可对班级信息进行修改。 图 5-10 班级浏览界面图3、班级查询模块的设计班级查询界面设置如图 5-11所示。通过输入班级、

37、专业和班主任的信息即可查到 所在班级的相关信息,其结果显示在图 5-10的数据网格中。图:班级查询图 5-11 班级查询界面图5.2 数据库的链接系统界面设计完成后,可开始编写程序以实现系统的具体功能。此学籍管理系统的数据库链接采用 ADO 的代码建立链接对象完成数据库的链接。 在 使用 ADO 对象之前, 必须先利用 Visual Basic 菜单的 “工程” “引用” 来引用 “ Microsoft Active Data Objects 2.6 Library” , 然后 ADO 对象群中 Connection 、 Recordset 、 Command 、 Fields 等对象才会成为

38、可以引用的对象。否则,类似下面的语句:Dim mrc as new ADODB.ConnectionDim mrc as new ADODB.Recordset都会产生“用户定义类型未定义”的错误,因为“ Connection ”和“ Recordset ”都是定义在“ Microsoft Active Data Objects 2.6 Library”中的。如果没有事先将其引用的 话, Visual Basic 将无法辨识它们。代码的编写请参看“附录” 。第 6 章 结论通过这次毕业设计, 我对四年所学的知识有了一个完整、 系统的认识。 这不仅巩固了 自己以前所学的知识,而且还熟悉了对 Vi

39、sual Basic 6.0应用软件的应用及开发一个管 理系统的基本要领、设计步骤和必要的知识,学会了熟练地应用其软件及查阅工具书。 在设计过程中,我体会到了设计的艰辛与快乐,只有不断地学习,把课本上所学的 知识同实际联系起来,才能不断提高自身的能力。经过一个多月的努力, 我们虽然完成了毕业设计的任务。 但由于时间仓促, 我们又缺 乏设计经验, 不能完整的把所学知识加以应用, 难免会出现一些错误, 望各位老师批语指 正。 通过这次我们组员共同合作完成的设计任务, 我们懂得了设计的真正目的和任务及合 作的重要性,培养了自己动手工作的能力。参考文献1 刘瑞新 . Visual Basic管理信息系

40、统开发毕业设计指导 . 北京 :机械工业出版社, 20052 刘韬,骆娟,何旭洪 . 人民邮电出版社, 20033 龚沛曾,陆慰民,杨志强 . Visual Basic程序设计教程 北京:高等教育出版社, 2000 4 曾强聪 . Visual Basic程序设计教程 中国水利水电出版社, 20035 孙建中,周龙 . 计算机专业英语 中国水利水电出版社 ,20026 邓良松,刘海岩,陆丽娜 . 软件工程 西安电子科技大学出版社, 2003计算机语言:Visual Basic 6.0语言新特征像以前的版本一样, VB6.0 它语言本身变成了语言发展环境的核心。它增加了许多 新的功能,当公用模块

41、,方法或功能使用时特定的数据类型提供了很多灵活性。公用模板和方法能够使用用户自定义类型作为变量或返回值。同样的,功能和模 块能返回。这将不再怀疑那些已经发现 VB 有可能被传给的数据类型中和从程序受限制 的好消息。控件在 VB6.0 也已经被提高 , 明确地产生事件功能。 除了创造普通的事件, 现在 可以创建一个可选择的机器名 而且产生在远程的系统上 。StrConv 功能 , 能在运行的过程中做不同的转变 , 它已经与一个被称为 LCID 的可选 择的变量一起延伸。 LCID 变量使你能够为线叙述 LocaleID。VB6.0中增添了许多新的事件类型。文件系统控件或文件系统对象 这些事件包括

42、一 些方法可以比目录更快速和容易。因为他们从手写体语言开始 , 所以 FSO 组对 VB 脚 本程序师可能是熟悉的。 在某的情况 ,VB6.0 将 能够对数组进行赋值。 尽管被复制的数组 是大小可变的或大小固定的 , 只有可变的数组能放在任务的左边。VB 的模块你可以在 VB 中创建自己的模块用类模块。模块包括以下类型:属性, 这些元素用来分配并且取回模块中的值。方法,这些公用的功能在模块中被定义 。事件,正如控制能在窗体中产生事件 ,来自你的模块中产生的事件在它的本身包含 这个事件。类模块也可以包含两个自身的特殊的事, 初始化和终止。 初始值事件在一个新的模块 被创建时被触发,终止值事件在事

43、件被破坏时产生。事件定义也在类模块中被创建。 一个类模块是一个标准的代码模块, 他仅包含公用事件和私有事件。没有类模块的使用接口。 但是, 一个模块能在工程窗体中被使用,正如一 个普通的代码模块。类模块有许多使用方法,如:在 VB 工程中,一个类模块提供一个方法在产生事件的任何地方 , 不使用全局的变量。 你能创建 ActiveX 控件而且编译他们通过 DLL 或 EXE 使其他的程序也能使用这些代码 部件。比如,你可以把所有的定义规则放在模块中并用 Active DLL部件进行编译。其他 程序能参考 DLL 并在应用中使用这些规则。你可以在 VB 中建立一个附加项,来提高 Visual Ba

44、sic IDE 的功能。数据库微软 Access微软 Access 是一个有力的窗口 , 并方便使用者的数据库管理系统。它提供标准的数 据管理特征给数据的 储藏和调用。但是使用图形工具可以通过 Windows 环境制造使任务 运行更容易。Access 数据库管理系统软件以及发展了很多年。它被设计来使使用者的数据库管理 工作能充分利用窗口环境,当剩余的使用者对其它程序规划的时候。 Access 支持对象链 接与嵌入和动态数据交换, 能将图形和文本加载到窗体和报表中。 产品提供一个图形用户 接口, 正如你从这一个市场的任何代表产品期待的那样。 报表, 窗体和查询能够很容易的 被设计并且运行。 因为

45、有一个技术上的倾斜个体 , 你将会感激宏功能和这种全图像的产品 规划能力。 Access 基础是支援一些使用者已经同过使用快速基础而精通的程序语言。 Access 使数据库管理更容易 , 通过扩展项目特征和后台处理, 你能增添窗 体和报表。致 谢本人在设计(论文期间都是在孙力群老师全面、具体指导下完成进行的。孙力群老师渊博的学 识、敏锐的思维、民主而严谨的作风使学生受益非浅,并终生难忘。感谢我的班主任和所有的代课老师四年来对我的关心和指导。感谢我的学友和朋友对我的关心和帮助。附 录公用模块的代码:Public modi As BooleanPublic classmodi As Boolean

46、Public cjmodi As BooleanPublic txtsql As StringPublic find As BooleanPublic classfind As BooleanPublic username As StringPublic qxstr As StringPublic Function ExecuteSQL(ByVal sql As String As ADODB.Recordset Dim mycon As ADODB.ConnectionDim rst As ADODB.RecordsetSet mycon = New ADODB.Connectionmyco

47、n.ConnectionString = connstringmycon.OpenDim stokens( As StringOn Error GoTo exectuesql_errorstokens = Split(sqlIf InStr("INSER,DELETE,UPDATE", UCase(stokens(0 Thenmycon.ExecuteSQLElseSet rst = New ADODB.Recordsetrst.Open Trim(sql, mycon, adOpenKeyset, adLockOptimisticSet ExecuteSQL = rstE

48、nd Ifexectuesql_exit:Set rst = NothingSet mycon = NothingExit Functionexectuesql_error:Resume exectuesql_exitEnd FunctionPublic Function connstring( As StringEnd FunctionPublic Function Executeqx(ByVal txt As Integer As StringDim sql As StringDim mycon As ADODB.ConnectionDim rst As ADODB.RecordsetSe

49、t mycon = New ADODB.Connectionmycon.ConnectionString = connstringmycon.OpenSet rst = New ADODB.Recordsetsql = "select admin from use where username='" & username & "'"rst.Open Trim(sql, mycon, adOpenKeyset, adLockOptimisticIf rst.EOF = True ThenMsgBox "非法用户 &

50、quot;, vbExclamation + vbOKOnly, "警告 "Executeqx = "nothing"Exit FunctionEnd IfIf rst.Fields(0 = "y" ThenExecuteqx = "admin"Exit FunctionEnd Ifrst.Closesql = "select readonly from use where username='" & username & "'"rst.Ope

51、n Trim(sql, mycon, adOpenKeyset, adLockOptimisticIf rst.Fields(0 = "y" ThenExecuteqx = "readonly"Exit FunctionEnd IfSelect Case txtCase 1sql = "select qx1 from use where username='" & username & "'"Case 2sql = "select qx2 from use where us

52、ername='" & username & "'"Case 3sql = "select qx3 from use where username='" & username & "'"End SelectOn Error GoTo exectuesql_errorSet rst = New ADODB.Recordsetrst.Open Trim(sql, mycon, adOpenKeyset, adLockOptimisticIf rst.Fields(0

53、 = "y" ThenExecuteqx = "true"ElseExecuteqx = "false"End Ifexectuesql_exit:Set rst = NothingSet mycon = NothingExit Functionexectuesql_error:Resume exectuesql_exitEnd Function主窗体的代码 :Private Declare Function SetWindowPos Lib "user32" (ByVal hwnd As Long, ByVal

54、hWndInsertAfter As Long, ByVal X As Long, ByVal Y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long As LongDim find1 As IntegerDim liulan1 As IntegerPrivate Sub about_Click(Load frmSplashfrmSplash.mbAbout = TruefrmSplash.Show vbModalEnd SubPrivate Sub add_Click(qxstr = Executeqx(2If

55、qxstr = "false" Or qxstr = "readonly" Thenss = MsgBox("对不起,您没有管理本模块的权限,请与管理员联系 ", vbInformation + vbOKOnly, "警告 "Exit SubEnd IfForm2.Showmodi = FalseForm2.ZOrder (0End SubPrivate Sub cjadd_Click(qxstr = Executeqx(3If qxstr = "false" Or qxstr = "

56、readonly" Thenss = MsgBox("对不起,您没有管理本模块的权限,请与管理员联系 ", vbInformation + vbOKOnly, " 警告 "Exit SubEnd Iffrmcj2.Showcjmodi = Falsefrmcj2.ZOrder 0End SubPrivate Sub cjbrowse_Click(qxstr = Executeqx(3If qxstr = "false" Thenss = MsgBox("对不起,您没有管理本模块的权限,请与管理员联系 ",

57、 vbInformation + vbOKOnly, " 警告 "Exit SubEnd Iffrmcj1.Showfrmcj1.ZOrder 0End SubPrivate Sub cjfind_Click(qxstr = Executeqx(3If qxstr = "false" Thenss = MsgBox("对不起,您没有管理本模块的权限,请与管理员联系 ", vbInformation + vbOKOnly, " 警告 "Exit SubEnd IfFrmcj3.ShowFrmcj3.ZOrder 0P

58、rivate Sub claasfind_Click(qxstr = Executeqx(2If qxstr = "false" Thenss = MsgBox("对不起,您没有管理本模块的权限,请与管理员联系 ", vbInformation + vbOKOnly, "警告 "Exit SubEnd IfForm4.ShowForm4.ZOrder (0i = SetWindowPos(Form4.hwnd, -1, 0, 0, 0, 0, 3End SubPrivate Sub classapp_Click(qxstr = Executeqx(2If qxstr = "false" Or qxstr = "readonly" Thenss = MsgBox("对不起,您没有管理本模块的权限,请与管理员联系 ", vbInformation + vbOKOnly, " 警告 "Exit SubEnd IfFormclass

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论