[精品论文]VB学生信息管理系统毕业论文_第1页
[精品论文]VB学生信息管理系统毕业论文_第2页
[精品论文]VB学生信息管理系统毕业论文_第3页
[精品论文]VB学生信息管理系统毕业论文_第4页
[精品论文]VB学生信息管理系统毕业论文_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

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

文档简介

毕业设计课程定做 Q1摘 要21.2前 言21.3开发学生信息管理系统相关问题21.3.1学生信息管理系统的简介21.4系统的实现以及相关问题21.4.1Visual Basic 6.0总概括21.4.2实施环境与工具的比较选择31.4.3编程环境、工具、实现与数据准备概况31.4.4学校管理者对学生信息管理系统的需求31.5学生信息管理系统功能模块设计、数据库的设计和功能实现41.5.1学生信息管理系统的功能模块设计41.5.2数据库设计41.6学生信息管理系统的具体实现81.6.1学生信息管理系统主窗体的创建81.6.2系统用户管理模块111.6.3学籍管理模块的创建121.6.4班级管理模块的创建141.6.5课程设置模块的创建151.6.6成绩管理模块的创建171.6.7帮助模块的设计171.7系统测试概况171.7.1系统转换方案及实现概况171.7.2软硬件平台171.8结束语171.9致 谢171.10参 考 文 献171.11附程序代码清单171.1 摘 要信息管理系统就是我们常说的MIS(Management Information System),它是一个计算机软硬件资源以及数据库的人-机系统。它能提供信息支持企业或组织的运行、管理和决策功能。学生信息管理系统是典型的信息管理系统,其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起资料一致性和完整性强、资料安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。 经过分析如此情况,我们使用Microsoft公司的Visual Basic 6.0开发工具,由于它给我们提供了用于从数据库中访问数据的强大工具集,使用它可以建立开发比较完善的数据库操作应用程序,并利用SQL Server2000提供数据库。尤其是Visual Basic 6.0可视化设计窗口这一方便而简洁的智能化对象,首先在短时间内建立系统应用原型,然后,对初始原型系统进行需求迭代,不断修正和改进,直到形成学校管理者满意的可行系统。关键词:原型法,面向对象,资料窗口,信息管理系统。1.2 前 言 学生信息管理系统是一个学校不可缺少的部分,它的内容对于学校管理者来说是至关重要,所以学生信息管理系统应该能够为学校管理者提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理学生档案,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间长了,将产生大量的文件和资料,这对于查找、更新和维护都带来了不少的困难。 随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。 作为计算机应用的一部分,使用计算机对学生档案进行管理,具有手工管理所无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高的效率,也是学校科学化、正规化管理的重要条件。因此,开发这样一套管理软件成为很有必要的事情,在下面的各章中我们将以开发一套学生信息管理系统为例,谈谈其开发过程和所涉及到的问题及解决方法。1.3 开发学生信息管理系统相关问题1.3.1 学生信息管理系统的简介学生信息管理系统是针对学校学生档案管理的大量工作而开发的管理软件,并以重庆市松桥中学作为本软件的开发背景。随着学校的规模不断扩大,学生数量急剧增加,有关学生的各种信息量也成信增加。面对庞大的信息量,就需要有学生信息管理系统来提高学生管理工作的效率。通过这样的系统,可能做到信息的规范管理、科学统计和快速的查询,从而减少管理方面的工作。系统开发的总体任务是实现学生信息关系的系统化、规范化和自动化。1.4 系统的实现以及相关问题1.4.1 Visual Basic 6.0总概括 Visual Basic 6.0是美国Microsoft公司推出的一个可视化程序开发软件。它是完全按照面向对象结构研制设计。采用图形化的应用开发环境。是面向对象开发工具的前端产品。它与其它的开发工具软作相比,有其自己独立的特点,其主要表现在:所见所得的界面设计;基于对象的设计方法;极短的软件开发周期;较易维护的生成代码。在有关数据库的应用中, Visual Basic 6.0具有描述多个数据库连接与检索的功能,特别是Visual Basic 6.0能提供ADO(Active Data Objects)作为应用程序和OLE-DB连接的桥梁。它能从大多数流行的数据库系统中提取资料,而且不管资料存放在什么地方。另外,各种应用程序也可以独立于数据库系统运行,因而Visual Basic 6.0可以使用数据库更简单。Visual Basic 6.0正在成为面向对象开发工具的标准。它为应用开发提供了全面、综合性的支持,可以分别概括为如下几点:1. 应用程序的事件驱动2. Visual Basic 6.0语言与函数3. 面向对象的编程4. 与数据库的连接性1.4.2 实施环境与工具的比较选择系统的实施是在系统设计的基础上,用Visual Basic 6进行程序设计开发。Visual Basic 6是新一代的程序语言,它提供了开发 Microsoft Windows(R) 应用程序的最迅速、最简捷的方法。与系统管理系统常用的开发工具Power Builder相比,Visual basic 6主要有以下优势:1支持ADO(ActiveX 数据对象):这项新的数据访问技术的特性包括:更简单的对象模型;与其它 Microsoft 和非 Microsoft 的技术更好的集成;为本地和远程数据数据提供的通用接口;可远程访问的和断开的记录集;用户可访问的数据绑定接口;以及层次结构的记录集。2完整的编程语言:同Power Builder只提供脚本不同,Visual Basic 6提供了一套完整的编程结构和语言元素。丰富的数据类型也提高了程序的性能。2.用对象编程:Visual Basic 6 是一种基于对象的编程语言。Visual Basic 6使得对象的使用变得很容易,它使在程序性编码和使用对象的程序设计之间进行平稳转换成为可能。1.4.3 编程环境、工具、实现与数据准备概况本系统是在Visual Basic 6自带的IDE下开发,数据库设计工具使用了SQL Server 2000。所有开发工具都是在Windows 2000操作系统使用,并考虑了系统程序在其他Windows版本操作系统下运行的要求。程序代码是以对象的观点来编写,整个系统所有的基本功能都封装在4个对象中,系统的功能实现都是通过调用这4个对象提供的接口实现。这样便提高了程序代码的模块化,有助于程序代码的调试及以后的功能扩展。1.4.4 学校管理者对学生信息管理系统的需求1.4.4.1 总体功能需求 学生信息管理系统是针对学校管理的大量工作,用计算机进行全面现代化管理。主要包括成绩信息管理、课程信息管理、班级信息管理、学籍信息管理和系统管理等几个方面的功能,以实现学校管理者方便的输入、查询、修改和删除等工作需求。1.4.4.2 具体系统功能需求描述 有关学籍等信息的输入,包括学生基本信息、所在班级、所学课程和成绩表等。 学生信息的查询,包括学生基本信息、所在班级、已学课程和成绩等。 学生信息的修改。 班级管理信息的输入,包括班级设置、年级信息等。 班级管理信息的查询。 班级管理信息的修改。 学校基本课程信息的输入。 基本课程信息的修改。 学生课程的设置和修改。 学生成绩信息的输入。 学生成绩信息的修改。 学生成绩信息的查询。 学生成绩信息的统计。1.5 学生信息管理系统功能模块设计、数据库的设计和功能实现1.5.1 学生信息管理系统的功能模块设计通过对上述的各项系统功能进行集中、分块,按照程序设计的要求,得到如图2-1所示的系统功能模块图。1.5.2 数据库设计 数据库在一个信息管理系统中占有非常重要的地位,数据库结构设计的好坏将直接对应用系统的效率以及实现的效果产生影响。合理的数据库结构设计可以提高数据存储的效率,图2-1保证数据的完整和一致。同时,合理的数据库结构也将有利于程序的实现。图2-11.5.2.1 数据库需求分析 用户的需求体现在各种信息的提供、保存、更新和查询,这就要求数据库结构能充分满足各种信息的输出和输入。在仔细分析调查有关学生信息需要的基础上,将得到如图2-2本系统所处理的数据流程。 图2-2针对一般学生信息管理系统的需求,通过对学生学习过程的内容和数据流程分析,设计如下所示的数据项和数据结构: 学生基本信息:包括的数据项有:学生学号、学生姓名、性别、出生日期、班号、联系电话、入校日期、家庭住址、备注等。 设计结果如下表:student_Info 学生基本信息表列 名数据类型可否为空说 明student_IDInt(4)NOT NULL学生学号(主键)student_NameCHAR(10)NULL学生姓名student_GenderCHAR(2)NULL学生性别Born_DateDATETIME(8)NULL出生日期Class_NOINT(4)NULL班号Telt_NumberCHAR(10)NULL联系电话Ru_dateDATETIME(8)NULL入校日期AddressVARCHAR(50)NULL家庭住址CommentVARCHAR(200)NULL注释 班级信息:包括的数据项有:班号、所在年级、班主任姓名、所在教室等。设计结果如下表:class_info 班级信息表格列 名数据类型可否为空说 明Class_NOINT(4)NOT NULL班号(主键)GradeCHAR(10)NULL年级DirectorCHAR(10)NULL班主任Classroom_noCHAR(10)NULL教室 课程基本信息:包括的数据项有:课程号、课程名称、课程类别、课程描述等。设计结果如下表:course_info 课程基本信息表列 名数据类型可否为空说 明Course_NOINT(4)NOT NULL课程编号(主键)Course_nameCHAR(10)NULL课程名称Course_typeCHAR(10)NULL课程类型Course_desCHAR(10)NULL课程描述 课程设置信息:包括的数据项有:年级信息、所学课程等。设计结果如下表:gradecourse_info 课程设置表列 名数据类型可否为空说 明gradeCHAR(10)null年级Course_nameCHAR(10)null课程设置 学生成绩信息:包括的数据项有:考试编号、所在班号、学生学号、学生姓名、所学课程、考试分数等。Result_info 学生成绩信息表列 名数据类型可否为空说 明Exan_NOCHAR(10)NOT NULL考试编号Student_IDINT(4)NOT NULL学生学号Student_NameCHAR(10)NULL学生姓名Class_NOInt(4)NULL学生班号Course_NameCHAR(10)NULL课程名称resultFLOAT(8)NULL分数User_info 系统用户表列 名数据类型可否为空说 明User_idCHAR(10)NOT NULL用户名称(主键)User_PWDCHAR(10)NULL用户密码User_desCHAR(10)NULL用户描述有了如上的数据结构、数据项和数据流程,我们就能进行数据库设计。1.5.2.2 数据库概念结构设计 根据前面的设计规划出的实体有:学生实体、班级实体、年级实体、年级实体、课程实体。各个实体的具体描述E-R图如下:图2-3 图2-4其中,图2-3为学生实体E-R图,图2-4为班级实体E-R图。 图2-5 图2-6图2-5为课程实体E-R图,图2-6为年级实体E-R图。实体和实体之间的关系如图2-7所示。1.5.2.3 数据库逻辑结构设计现在需要将上面的数据库概念结构转化为SQL Server 2000数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。在上面的实体以及实体之间关系的基础上,形成数据库的表格以及各个表格之刘的关系。1.5.2.4 数据库结构的实现经过需求分析和概念结构设计之后,得到数据库的逻辑结构。现在在SQL Server 2000数据库系统中实现该逻辑结构,利用SQL Server 2000数据库系统中的SQL查询分析器来实现。创建系统用户表格user_Info的SQL语句如下:CREATE TABLEdbo.user_Info(user_IDchar(10)COLLATE Chinese_PRC_CI_AS NOT NULL,user_PWDchar(10)COLLATE Chinese_PRC_CI_AS NULL,user_Deschar(10)COLLATE Chinese_PRC_CI_AS NULL)ON PRIMARY1.6 学生信息管理系统的具体实现上面的的SQL语句在SQL Server 2000中的查询分析器中执行后,将产生所需要的表格,下面将使用Visual Basic 6.0来编写数据库系统的客户端程序。 1.6.1 学生信息管理系统主窗体的创建在本系统开发中,我们使用MDI(即多文档界面),这样可以使程序更加的美观、整齐有序。学生信息管理系统的主窗体如图4-1所示。1.6.1.1 创建公用模块在Visual Basic 中可以用公用模块来存放整个工程项目公用的函数、全局变量等。整个项目中的优任何地方都可以调用公用模块中的函数,这样就可以极大地提高代码的效率。由于系统中各个功能模块都将频繁使用数据库中的各种数据,因此需要一个公用的数据操作函数,用以执行各种SQL语句。添加函数ExecuteSQL,代码如下:Public Function ExecuteSQL(ByVal SQL _ As String, MsgString As String) _ As ADODB.Recordsetexecutes SQL and returns Recordset Dim cnn As ADODB.Connection Dim rst As ADODB.Recordset 图4-1 程序主窗体 Dim sTokens() As String On Error GoTo ExecuteSQL_Error sTokens = Split(SQL) Set cnn = New ADODB.Connection cnn.Open ConnectString If InStr(INSERT,DELETE,UPDATE, _ UCase$(sTokens(0) Then cnn.Execute SQL MsgString = sTokens(0) & _ query successful Else Set rst = New ADODB.Recordset rst.Open Trim$(SQL), cnn, _ adOpenKeyset, _ adLockOptimistic rst.MoveLast get RecordCount Set ExecuteSQL = rst MsgString = 查询到 & rst.RecordCount & _ 条记录 End IfExecuteSQL_Exit: Set rst = Nothing Set cnn = Nothing Exit Function ExecuteSQL_Error: MsgString = 查询错误: & _ Err.Description Resume ExecuteSQL_ExitEnd FunctionExecuteSQL函数共有两个参数: SQL和MsgString。其中SQL用来存放需要执行的SQL语句,MsgString用来返回执行的提示信息。函数执行时,首先判断SQL语句中包含的内容:当执行查询操作时,MsgStringSQL函数将返回一个与函数同名的记录集对象(Recordset),所有满足条件的记录包含在对象中;当执行如删除、更新、添加等操作时,不返回记录对象。在MsgStringSQL函数中使用了Connect String函数,这个函数用来连接数据库,代码如下:Public Function ConnectString() _ As Stringreturns a DB ConnectString ConnectString = FileDSN=studentinfo.dsn;UID=sa;PWD=End Function由于在后面的过程中, 需要频繁检查各促文本框的内容是否为空,这里还需要定义Testtxt 函数代码,代码如下:Public Function Testtxt(txt As String) As Boolean If Trim(txt) = Then Testtxt = False Else Testtxt = True End IfEnd Function由于学生信息管理系统启动后,需要对用户进行判断。如果登陆者是授权用户,将进入系统,否则停止程序的执行。这个判断在系统运行的最初进行,因此代码应该放在公手模块中。代码如下:Sub Main() Dim fLogin As New frmLogin fLogin.Show vbModal If Not fLogin.OK Then Login Failed so exit app End End If Unload fLogin Set fMainForm = New frmMain fMainForm.ShowEnd Sub过程Main将在系统启动时首先执行,保证对用户的管理。系统需要知道登陆用户的信息,定义全局变量UserName。 Public UserName As String1.6.2 系统用户管理模块系统用户管理模块主要实现: 用户登陆 添加用户 修改用户密码1.6.2.1 用户登陆窗体的创建 系统启动后,将首先出现如图6-2所示的用户登陆窗体,用户首先输入用户名,然后输入密码。如果连续3次输入密码不正确,将退出程序。 图6-2 用户登陆窗口中放置了两个文本框(TextBox),用来输入用户名和密码;两个按钮(CommanmdButton)用来确定和取消登陆;四个标签(Label)用来标示窗体的信息。并为之设置属性。1.6.2.2 添加用户窗体的创建进入系统后,选择菜单”系统添加用户”就可以添加用户,出现如图6-3所示的窗体。这个窗体中放置了3个文本框,用来输入用户和密码;两个按钮用来确定是否添加用户;3个标签用来标示文本框的提示。 图6-3 1.6.2.3 修改用户密码窗体的创建用户可以修改自己的密码,选择菜单“系统修改密码”出现如图6-4所示的窗体。 图6-41.6.3 学籍管理模块的创建 学籍管理模块主要实现如下功能: 添加党籍信息 修改学籍信息 查询学籍信息1.6.3.1 添加学籍信息窗体的创建 选择“学籍管理添加学籍信息”菜单,将出现图6-5所示的窗体。图6-51.6.3.2 修改学籍信息窗体的创建选择“学籍管理-修改学籍信息”菜单,将出现如图6-6所示的窗体。本修改学籍窗口,不但能够修改学籍信息而且能够查看相关的学知信息。当窗口中出现某一学生的学籍信息后,可以点“上一条记录”、“下一条记录”、“第一条记录”和“最后一条记录”来分别查找相关记录。由于查找课程信息和班级信息等窗口中与此大致相同,以下不再累述。 图6-61.6.3.3 查询学籍信息窗口 选择“学籍管理查询学籍信息”菜单。将出现如图6-7所示的窗体,在这里可以按照各种组合方式进行查询。图6-7 1.6.4 班级管理模块的创建班级管理模块主要实现如下功能: 添加班级信息 修改班级信息1.6.4.1 添加班级信息窗口模块进入系统后,选择“班级管理添加班级信息”菜单,将出现如图6-8所示的窗体。图6-81.6.4.2 修改班级信息窗体的创建进入系统后,选择“班级管理修改班级信息”菜单,将出现如图6-9所示的窗体。图6-91.6.5 课程设置模块的创建课程设置模块主要实现如下功能: 添加课程信息 修改课程信息 设置年级课程1.6.5.1 添加课程信息窗体的创建选择“课程设置添加课程信息”菜单,将出现如图6-10所示的窗体。图6-101.6.5.2 修改课程信息窗口的创建选择“课程设置修改课程信息”菜单,将出现如图6-11所示的窗体。 图6-111.6.5.3 设置年级课程表选择“课程设置设置年级课程”,将出现如图6-12所示的窗体。图6-11 1.6.6 成绩管理模块的创建成绩管理模块主要实现以下功能: 添加成绩信息 修改成绩信息 查询成绩信息1.6.6.1 添加成绩信息窗体的创建选择“成绩管理添加成绩信息”菜单,将出现如图6-12所示的窗体。图6-121.6.6.2 修改成绩信息窗体的创建选择“成绩管理修改成绩信息”菜单。将出现如图6-13所示的窗体。图6-131.6.6.3 查询成绩信息窗体选择“成绩管理查询成绩信息”菜单。将出现如图6-14所示的窗体。图6-141.6.7 帮助模块的设计一个良好的WINDOWS应用程序应该提供一个ABOUT窗口,基中包括系统的名称、所有权等。学生信息管理系统的ABOUT窗口如图6-15。图6-151.7 系统测试概况鉴于本系统规模不是很大,因此系统的测试主要集中在4个封装基本功能的对象的代码测试和最后系统的总体测试。代码测试主要是测试对象提供的接口运行是否正常,测试运行结果是否与期望相同。以及对象的接口的容错性。总体测试主要是测试整个系统的运行正确性、可靠性和稳定性,其中正确性最主要。总体测试的内容包括使用本系统进行大量数据的录入,特别是边缘数据的录入测试。其次测试系统的查询和打印功能,测试其结果是否与预期相符。由于测试项目内容较多,无法在此一一罗列,故将几个在测试中发现的主要问题列出。1 系统开发过程中与数据库的连接情况出现问题由于一开始没有注意到数据库连接的相关问题,所以在刚开始开发的过程中,比如一输入用户名和密码的时候,就出现错误,这是由于在与数据库的连接中出现了问题。通过对代码的单步跟踪及有关文档,以及指导教师的指导,找到了错误的原因。经过调整某些参数以后,操作运行正常。2ComboxBox的使用在程序许多对话框中都要用到改变一个ComboBox的选择项,其他的相关ComboBox的内容要进行相应的改变,如在学院的ComboBox中选定了某个年级,则相应的专业ComboBox的内容应变为这个学院的专业项。开始,这一更新相关ComboBox的代码是放在ComboBox的Change事件中,认为ComboBox的选择项的改变就出发此事件。但在运行过程中,相应ComboBox没有如预期随选择项的改变而改变。通过单步跟踪,发现此事件并没有因为选择项的改变而触发。后查阅文档,改用Click事件放更新代码,运行正常。1.7.1 系统转换方案及实现概况本系统的实现比较方便,只要具备本系统运行的环境就可使用。系统安装只需使用提供的系统安装程序将系统安装到计算机上,如需多台计算机一起使用,只需要分别将系统装在相应的计算机上,然后指定使用一台计算机上的数据库,其他计算机在使用时需与此计算机联网,并在系统登录时选择指定计算机上的数据库文件即可。系统运行与维护概况平时应注意对使用系统的计算机的日常管理,特别是存放数据库文件的计算机。有条件的应该定期对数据库文件进行拷贝备份,防止因意外或人为因素导致数据库文件的破坏而造成数据丢失的损失,保证系统的正常运行。1.7.2 软硬件平台 客户机/服务器:采用Pentium II 或以上级别PC机,至少30M硬盘,Pentium90MHZ,支持VGA或分辨率更高的显示器客户机/服务器操作系统:Window 98/Me,也可使用Windows NT作为操作系统数据库:SQL Server2000网络:以太网组成的局域网,可设多台客户机。1.8 结束语经过三个多月的设计和开发,学生信息管理系统基本开发完毕。其功能基本符合学校管理者需求,能够完成成绩信息、课程信息、班级信息、学籍信息的输入、查询、修改和删除,以及各类相关报表的打印。 但是由于毕业设计时间较短,所以该系统还有许多不尽如人意的地方,比如联机文档比较少,学校管理者接口不够美观,出错处理不够等多方面问题。这些都有待进一步改善。1.9 致 谢在本次毕业设计中,我从指导老师尚老师身上学到了很多东西。尚老师认真负责的工作态度,严谨的治学精神和深厚的理论水平都使我收益匪浅。他无论在理论上还是在实践中,都给与我很大的帮助,使我得到不少的提高,这对于我以后的工作和学习都有一种巨大的帮助,感谢他耐心的辅导。另外,在系统开发过程中,我的朋友APPLE ZHOU给予我很大精神支持,让我渡过难关。也从技术上给予我不少帮助,这里一并表示感谢。1.10 参 考 文 献1Visual Basic 程序设计 陈 明 中央广播电视大学出版社2000年2SQL Sever 高级开发与专业运用3Visual Basic 6.0 数据库开发与专业运用 敬 铮 国防工业出版社 2002年1.11 附程序代码清单毕业设计课程定做 QQ1714879127系统主窗体:Private Sub addcinfoMenu_Click() frmAddclassinfo.ShowEnd SubPrivate Sub addcourseMenu_Click() frmAddcourseinfo.ShowEnd SubPrivate Sub addresultMenu_Click() frmAddresult.ShowEnd SubPrivate Sub addsinfoMenu_Click() frmAddsinfo.ShowEnd SubPrivate Sub adduserMenu_Click() frmAdduser.Show sbStatusBar.Panels(1).Text = 添加用户End SubPrivate Sub exitMenu_Click() EndEnd SubPrivate Sub exitsinfoMenu_Click() Unload frminquireinfoEnd SubPrivate Sub gradecourseMenu_Click() frmSetcourseinfo.ShowEnd SubPrivate Sub inquireresultMenu_Click() frmInquireresult.ShowEnd SubPrivate Sub inquiresinfoMenu_Click() frmInquiresinfo.ShowEnd SubPrivate Sub MDIForm_Load() Me.Left = GetSetting(App.Title, Settings, MainLeft, 1000) Me.Top = GetSetting(App.Title, Settings, MainTop, 1000) Me.Width = GetSetting(App.Title, Settings, MainWidth, 6500) Me.Height = GetSetting(App.Title, Settings, MainHeight, 6500) End SubPrivate Sub MDIForm_Unload(Cancel As Integer) If Me.WindowState vbMinimized Then SaveSetting App.Title, Settings, MainLeft, Me.Left SaveSetting App.Title, Settings, MainTop, Me.Top SaveSetting App.Title, Settings, MainWidth, Me.Width SaveSetting App.Title, Settings, MainHeight, Me.Height End IfEnd SubPrivate Sub modifycinfoMenu_Click() frmModifyclassinfo.ShowEnd SubPrivate Sub modifycourseMenu_Click() frmModifycourseinfo.ShowEnd SubPrivate Sub modifypwdMenu_Click() frmModifyuserinfo.ShowEnd SubPrivate Sub modifyresultMenu_Click() frmModifyresult.ShowEnd SubPrivate Sub modifysinfo_Menu_Click() frmModifysinfo.ShowEnd Sub登陆窗口Option ExplicitPrivate Declare Function GetUserName Lib advapi32.dll Alias GetUserNameA (ByVal lpbuffer As String, nSize As Long) As LongPublic OK As Boolean记录确定次数Dim miCount As IntegerPrivate Sub Form_Load() Dim sBuffer As String Dim lSize As Long sBuffer = Space$(255) lSize = Len(sBuffer) Call GetUserName(sBuffer, lSize) If lSize 0 Then txtUserName.Text = Else txtUserName.Text = vbNullString End If OK = False miCount = 0End SubPrivate Sub cmdCancel_Click() OK = False Me.HideEnd SubPrivate Sub cmdOK_Click() Dim txtSQL As String Dim mrc As ADODB.Recordset Dim MsgText As String ToDo: create test for correct password check for correct password UserName = If Trim(txtUserName.Text = ) Then MsgBox 没有这个用户,请重新输入用户名!, vbOKOnly + vbExclamation, 警告 txtUserName.SetFocus Else txtSQL = select * from user_Info where user_ID = sa & txtUserName.Text & Set mrc = ExecuteSQL(txtSQL, MsgText) If mrc.EOF = True Then MsgBox 没有这个用户,请重新输入用户名!, vbOKOnly + vbExclamation, 警告 txtUserName.SetFocus Else If Trim(mrc.Fields(1) = Trim(txtPassword.Text) Then OK = True mrc.Close Me.Hide UserName = Trim(txtUserName.Text) Else MsgBox 输入密码不正确,请重新输入!, vbOKOnly + vbExclamation, 警告 txtPassword.SetFocus txtPassword.Text = End If End If End If miCount = miCount + 1 If miCount = 3 Then Me.Hide End If Exit SubEnd Sub设置年级课程信息窗口:Option ExplicitDim flagSet As BooleanDim flagGrade As BooleanPrivate Sub cmdAdd_Click() If listAllcourse.ListIndex -1 Then listSelectcourse.AddItem listAllcourse.List(listAllcourse.ListIndex) End If End SubPrivate Sub cmdDelete_Click() If listSelectcourse.ListIndex -1 Then listSelectcourse.RemoveItem listSelectcourse.ListIndex End IfEnd SubPrivate Sub cmdExit_Click() Unload MeEnd SubPrivate Sub cmdModify_Click() Dim i As Integer Dim mrc As ADODB.Recordset Dim mrcc As ADODB.Recordset Dim txtSQL As String Dim MsgText As String Dim myBookmark As Variant If Not Testtxt(comboGrade.Text) Then MsgBox 请先选择年级!, vbOKOnly + vbExclamation, 警告 Exit Sub End If If Not Testtxt(listSelectcourse.List(0) Then MsgBox 请选择课程!, vbOKOnly + vbExclamation, 警告 Exit Sub End If txtSQL = select * from gradecourse_Info where grade = & Trim(comboGrade.Text) & Set mrc = ExecuteSQL(txtSQL, MsgText) If mrc.EOF Then For i = 1 To listSelectcourse.ListCount mrc.AddNew mrc.Fields(0) = comboGrade.Text mrc.Fields(1) = listSelectcourse.List(i - 1) mrc.Update Next i mrc.Close MsgBox 课程设置成功!, vbOKOnly + vbExclamation, 警告 Else mrc.Close txtSQL = delete from gradecourse_Info where grade = & Trim(comboGrade.Text) & Set mrcc = ExecuteSQL(txtSQL, MsgText) txtSQL = select * from gradecourse_Info Set mrcc = ExecuteSQL(txtSQL, MsgText) For i = 1 To listSelectcourse.ListCount mrcc.AddNew mrcc.Fields(0) = comboGrade.Text mrcc.Fields(1) = listSelectcourse.List(i - 1) mrcc.Update Nex

温馨提示

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

评论

0/150

提交评论