学生信息管理系统设计 计算机毕业论文

上传人:仙*** 文档编号:28657338 上传时间:2021-09-05 格式:DOC 页数:39 大小:625.52KB
返回 下载 相关 举报
学生信息管理系统设计 计算机毕业论文_第1页
第1页 / 共39页
学生信息管理系统设计 计算机毕业论文_第2页
第2页 / 共39页
学生信息管理系统设计 计算机毕业论文_第3页
第3页 / 共39页
点击查看更多>>
资源描述
第一章 系统概述本学生信息管理系统可以说是一个综合性的学校学生管理系统,这它集成了学生学籍管理系统、学生成绩管理系统、学生档案管理系统、学生缴费管理系统等多种功能,因而具有较强的实用性和先进性。1.1 系统及需求分析 1.1.1 系统需求 通过调查,要求系统需要有以下功能:(1) 由于操作人员的计算机知识普遍较差,要求有良好的人机界面;(2) 由于该系统的使用对象多,要求有较好的权限管理; (3) 原始数据修改简单方便,支持多条件修改;(4) 方便的数据查询,支持多条件查询;(5) 在相应的权限下,删除数据方便简单,数据稳定性好;(6) 数据计算自动完成,尽量减少人工干预。1.1.2可行性分析由于本系统管理的对象单一,都是在校学生,且每个数据内容具有较强的关联性,涉及的计算过程不是很复杂。因此,比较适合于采用数据库管理。且学校用于学生管理的微机都是PIII以上的机器,在存储量、速度方面都能满足数据库运行的要求。在技术难度方面,由于有指导老师的指导和相关参考文献,特别是网上资料,特别是参考其它程序的功能,因此完全可以实现。本系统的设计是在Windows 98中文版操作系统环境下,使用Visual Basic 6.0中文版开发成功的。数据库是MIS中的重要支持技术,在MIS开发过程中,如何选择数据库管理是一个重要的问题,目前,数据库产品较多,每种产品都具有各自的特点和适用范围,因此,在选择数据库时,应考虑数据库应用的特点及适用范围,本系统选用的数据库语言介绍如下:Visual Basic语言Visual Basic是一种可视化的、面对对象和条用事件驱动方式的结构化高级程序设计,可用于开发Windows环境下的种类应用程序。它简单易学、效率高,且功能强大,可以与Windows的专业开发工具SDK相媲美,而且程序开发人员不必具有C/C+编程基础。在Visual Basic环境下,利用事件驱动的编程机制、新颖易用的可视化设计工具,使用Windows内部的应用程序接口(API)函数,以及动态链接库(DLL)、动态数据交换(DDE)、对象的链接与嵌入(OLE)、开放式数据访问(ODBC)等技术,可以高效、快速地开发出Windows环境下功能强大、图形界面丰富的应用软件系统。总的来说,Visual Basic具有以下特点:可视化编程:用传统程序设计语言设计程序时,都是通过编写程序代码来设计用户界面,在设计过程中看不到界面的实际显示效果,必须编译后运行程序才能观察。如果对界面的效果不满意,还要回到程序中修改。有时候,这种编程-编译-修改的操作可能要反复多次,大大影响了软件开发效率。Visual Basic提供了可视化设计工具,把Windows界面设计的复杂性“封装”起来,开发人员不必为界面设计而编写大量程序代码。只需要按设计要求的屏幕布局,用系统提供的工具,在屏幕上画出各种“部件”,即图形对象,并设置这些图形对象的属性。Visual Basic自动产生界面设计代码,程序设计人员只需要编写实现程序功能的那部分代码,从而可以大大提高程序设计的效率。面向对象的程序设计4.0版以后的Visual Basic支持面向对象的程序设计,但它与一般的面向对象的程序设计语言(C+)不完全相同。在一般的面向对象程序设计语言中,对象由程序代码和数据组成,是抽象的概念;而Visual Basic则是应用面向对象的程序设计方法(OOP),把程序和数据封装起来作为一个对象,并为每个对象赋予应有的属性,使对象成为实在的东西。在设计对象时,不必编写建立和描述每个对象的程序代码,而是用工具画在界面上,Visual Basic自动生成对象的程序代码并封装起来。每个对象以图形方式显示在界面上,都是可视的。结构化程序设计语言Visual Basic是在BASIC语言的基础上发展起来的,具有高级程序设计语言的语句结构,接近于自然语言和人类的逻辑思维方式。Visual Basic语句简单易懂,其编辑器支持彩色代码,可自动进行语法错误检查,同时具有功能强大且使用灵活的调试器和编译器。Visual Basic是解释型语言,在输入代码的同时,解释系统将高级语言分解翻译成计算机可以识别的机器指令,并判断每个语句的语法错误。在设计Visual Basic程序的过程中,随时可以运行程序,而在整个程序设计好之后,可以编译生成可执行文件(.EXE),脱离Visual Basic环境,直接在Windows环境下运行。事件驱动编程机制Visual Basic通过事件来执行对象的操作。一个对象可能会产生多个事件,每个事件都可以通过一段程序来响应。例如,命令按钮是一个对象,当用户单击该按钮时,将产生一个“单击“(CLICK)事件,而在产生该事件时将执行一段程序,用来实现指定的操作。在用Visual Basic设计大型应用软件时,不必建立具有明显开始和结束的程序,而是编写若干个微小的子程序,即过程。这些过程分别面向不同的对象,由用户操作引发某个事件来驱动完成某种特定的功能,或者由事件驱动程序调用通用过程来执行指定的操作,这样可以方便编程人员,提高效率。访问数据库Visual Basic具有强大的数据库管理功能,利用数据控件和数据库管理窗口,可以直接建立或处理Microsoft Access格式的数据库,并提供了强大的数据存储和检索功能。同时,Visual Basic还能直接编辑和访问其他外部数据库,如dBASE,FoxPro,Paradox等,这些数据库格式都可以用Visual Basic编辑和处理。Visual Basic提供开放式数据连接,即ODBC功能,可通过直接访问或建立连接的方式使用并操作后台大型网络数据库,如SQL Server,Oracle等。在应用程序中,可以使用结构化查询语言SQL数据标准,直接访问服务器上的数据库,并提供了简单的面向对象的库操作指令和多用户数据库访问的加锁机制和网络数据库的SQL的编程技术,为单机上运行的数据库提供了SQL网络接口,以便在分布式环境中快速而有效地实现客户/服务器(client/server)方案。动态数据交换(DDE)利用动态数据交换(Dynamic Data Exchange)技术,可以把一种应用程序中的数据动态地链接到另一种应用程序中,使两种完全不同的应用程序建立起一条动态数据链路。当原始数据变化时,可以自动更新链接的数据。Visual Basic提供了动态数据交换的编程技术,可以在应用程序中与其他Windows应用程序建立动态数据交换,在不同的应用程序之间进行通信。对象的链接与嵌入(OLE)对象的链接与嵌入(OLE)将每个应用程序都看做是一个对象(object),将不同的对象链接(link)起来,再嵌入(embed)某个应用程序中,从而可以得到具有声音、影像、图像、动画、文字等各种信息的集合式的文件。OLE技术是Microsoft公司对象技术的战略,它把多个应用程序合为一体,将每个应用程序看做是一个对象进行链接和嵌入,是一种应用程序一体化的技术。利用OLE技术,可以方便地建立复合式文档(compound document),这种文档由来自多个不同应用程序的对象组成,文档中的每个对象都与原来的应用程序相联系,并可执行与原来应用程序完全相同的操作。动态链接库(DLL)Visual Basic是一种高级程序设计语言,不具备低级语言的功能,对访问机器硬件的操作不太容易实现。但它可以通过动态链接库技术将C/C+或汇编语言编写的程序加入到Visual Basic应用程序中,可以像调用内部函数一样调用其他语言编写的函数。此外,通过动态链接库,还可以调用Windows应用程序接口(API)函数,实现SDK所具有的功能。1.2系统的功能简介本系统主要可以实现以下的管理功能:班级管理、学生档案管理、学生交费管理、课程管理、成绩管理等等。1.2.1 项目规划学生信息管理系统是一个典型的数据库应用程序,由班级管理、学生档案管理、学生交费管理、课程管理、成绩管理等模块组成,特规划如下:1.2.2系统管理模块(CTRL+O)该模块的主要任务是维护系统的正常运行和安全性设置,包括添加用户(快捷键:CTRL+A)、修改密码(快捷键:CTRL+B)、重新登录(快捷键:CTRL+F1)等等。1.2.3班级管理模块(CTRL+P):该模块的功能是实现对全校班级的管理工作,包括:班级游览、班级添加、班级查询等,这三个功能模块各自独立,完成学校的全部班级的管理。1.2.4学生档案管理模块(CTRL+T):该模块的主要功能是实现对学生的个人信息的管理工作,包括档案添加、档案浏览、档案查询等功能,从而方便学校管理部门对学校的基本情况的快速查询和了解。1.2.5课程管理模块(CTRL+R):该模块对各个班级的课程进行设置,并可在其中设置各门课程的教材选用情况,方便了学校教材管理部门和教务处的教学管理人员的工作。该模块包括基本课程设计和班级课程设置两个模块。1.2.6成绩管理模块(CTRL+F):学校的成绩管理工作是检验学生学习情况的一个主要手段,本模块包括考试类型设置,共有期中考试和期未考试两种类型,还设置了成绩添加、成绩游览、成绩查询等功能模块。1.3系统开发的目标出于本系统是学校学生管理的一个综合性的系统,本系统的设计目标将最终定位于完成以上所述的系统主要业务的基本模型上。第二章 系统分析2.1业务流程分析班级管理业务流程图:教务处输入计算机班主任教务处学生班级班级输出 图1 班级管理业务流程图档案管理业务流程图:教务处输入计算机班主任教务处学生档案档案输出 图2 档案管理业务流程图课程管理业务流程图:教务处输入计算机教师教务处学生课程输出课程 图3 课程管理业务流程图成绩管理业务流程图:教务处输入计算机教师教务处学生成绩教师输出 图4 成绩管理业务流程图1教务处输入计算机班主任教务处学生班级班级输出 图5 成绩管理业务流程图22.2数据流程分析:2.2.1数据流程图:由于本系统的数据模块较多,下面仅以学生成绩管理模块为例来进行编制。学籍管理部门教师学生成绩管理系统教务处学生教师教师学生情况学生成绩查询统计分析图6 学生成绩管理系统0层数据流程图管理部门教务处教师1.0学生管理2.0课程管理3.0成绩管理4.0统计分析D1D2D3查询者管理者学生课程成绩 图7 学生成绩管理系统1层数据流程图2.3数据存储分析:实体联系图1、数据模型设计。首先来做出学生成绩管理系统的E-R图,分析这个问题的实体,从系统分析可以知道,学生的成绩是由任课教师按照课程给出的,学生、课程、教师组成了这个系统的三个实体。2、再分析三个实体之间的联系。首先,这三个实体不是一个统一体,学生成绩与教师没有内在联系,教师必须通过课程实体才能与学生建立联系,因而先不考虑。课程与学生这两个实体是多对多联系;一位学生要学习多门课程,一门课程有多位学生共同学习。而学习成绩是这两个实体“学生”和“成绩”共有的属性,应填在二者的联系“学习”边。因为成绩既不是学生独有的,也不是课程独有的;“学生甲70分”或“英语70分”是不完全的,说“学生甲英语70分”才是正确的,因为70分是学生甲和英语课二者共有的。这个E-R图可画成下图。学生课程成绩学习mn 图8 学生成绩管理系统中学生与课程的E-R图教师与课程这两个实体之间,是一对多联系;一位教师可以都多门课程,而一门课程对于学生成绩来说只能有一位教师(英语、高等数学有多位教师教,但对某个固定的学生来说只能有一位教师)。其E-R图,如下所示。n教师课程教学l 图9 E-R图教师与课程的E-R图组合到一起,得到最后的E-R图,有了E-R图,就可以设计数据库。下图为数据模型图。学生课程教师学习学习课程学生教师实体模型数据模型数据库学习lnmm 图10 数据模型图2.4功能分析:功能层次图学生信息管理系统登录系统管理班级管理档案管理打印报表课程管理成绩管理基本课程设置学生缴费浏览班级课程设置学生缴费添加基本学费设置学生缴费查询修改密码添加班级档案浏览添加用户复新登录班级浏览班级查询档案添加档案查询 图11 功能层次图第三章 系统设计3.1软件模块结构设计3.1.1系统方案确定通过对系统的调研与分析,系统主要应完成的功能有:班级管理、学生成绩管理、学生交费管理、课程管理、成绩管理、系统管理等功能。3.1.2软件结构设计本系统在执行时,先根据不同的操作人员的需要来进行相应的模块,然后可以输入数据或者进行其它的查询或浏览等操作;总体来说,本系统属于一个事务型管理系统。接受数据处理中心班级管理档案管理交费管理课程管理成绩管理打印报表 图12 软件结构图3.2数据库设计数据库采用了Microsoft推出的Access数据库,这是微软集成到Office中的一个桌面数据库,能够快速方便的和Office的其他套件综合使用。由于Access具有显著的简易性和有效性,大量的桌面数据库系统都采用Access作为后台数据库。使用Access的好处还在于,如果你的系统扩展到Client/Server模式的时候,可以使用Microsoft的数据库服务器软件SQL Server,此时,程序只需要简单的修改一下链接(ADO的数据源)就可以,这样,为程序的平滑扩展提供了非常有力的条件。3.2.1 本系统中所涉及到的主要实体共有九个数据表:allkecheng表:课程名称,教材cj表:学号,学期,类型,课程名称,分数class表:年级,班级,教室,年制,专业,班主任,备注classkecheng表:年级,专业,年制,学期,课程名称jf表:学号,学期,交费,欠费,日期,操作员kaoshileixing表:类型use表:username,password,admin,readonly,qx1,qx2,qx3,qx4xj表:学号,姓名,性别,班级,出生年月,家庭住址,邮政编码,联系电话,入学时间,备注suefei表:年级,专业,年制,学期,学费3.2.2 各表的物理结构如下:allkecheng表:字段名称类型宽度小数位课程名称文本20教材文本30Cj表:字段名称类型宽度小数位学号文本10学期文本50类型文本16课程名称文本20分数单精度型数字自动 Class表:字段名称类型宽度小数位年级文本16班级文本20教室文本5年制文本8专业文本16班主任文本8备注备注Classkecheng表:字段名称类型宽度小数位年级文本16专业文本12年制文本8学期文本50课程名称文本20Jf表:字段名称类型宽度小数位学号文本5学期文本50交费货币自动欠费货币自动日期日期/时间操作员文本10Kaosileixing表:字段名称类型宽度小数位类型文本10Use表:字段名称类型宽度小数位username文本20password文本20Admin文本2Readonly文本2Qx1文本2Qx2文本2Qx3文本2Qx4文本2xj表:字段名称类型宽度小数位学号文本9姓名文本8性别文本2班级文本10出生年月日期/时间家庭住址文本30邮政编码数字(长整型)联系电话数字(长整型)入学时间日期/时间备注备注xuefei表:字段名称类型宽度小数位年级文本16专业文本50年制文本20学期文本40学费货币自动第四章 系统代码本部分主要内容为本系统的运行界面以及主要界面的源代码。41系统登陆界面:本界面的主要功能是为了对系统进行安全性管理,本系统的用户名和密码保存在USE表中,本系统根据不同的用户而设置了不同的权限,可以用909;909为用户名和密码来登陆本系统。 图13 登陆界面Private Sub Command1_Click()Dim mrc As ADODB.Recordsettxtsql = select username from use where username= & Trim(Text1.Text) & Set mrc = ExecuteSQL(txtsql)If mrc.EOF = True Then MsgBox 用户名错误!, vbExclamation + vbOKOnly, 警告 Text1.SetFocus Text1.SelStart = 0 Text1.SelLength = Len(Text1.Text) Exit SubEnd Ifusername = mrc.Fields(0)txtsql2 = select username from use where password= & Trim(Text2.Text) & Set mrc = ExecuteSQL(txtsql2)If mrc.EOF = True Then MsgBox 密码错误!, vbExclamation + vbOKOnly, 警告 Text2.SetFocus Text2.SelStart = 0 Text2.SelLength = Len(Text2.Text) Exit SubEnd Iftxtsql = select username from use where username= & Trim(Text1.Text) & and password= & Trim(Text2.Text) & Set mrc = ExecuteSQL(txtsql)If mrc.EOF = True Then MsgBox 用户名称和密码不匹配!, vbExclamation + vbOKOnly, 警告 Exit SubEnd IfMDIForm1.Showfrmcpass.Text1.Text = Text1.TextUnload MeEnd SubPrivate Sub Command2_Click()Unload MeEnd SubPrivate Sub Form_Load()End SubPrivate Sub Text1_KeyPress(KeyAscii As Integer)If KeyAscii = 13 Then Text2.SetFocusEnd IfEnd SubPrivate Sub Text2_KeyPress(KeyAscii As Integer)If KeyAscii = 13 Then Command1.SetFocusEnd IfEnd Sub42系统主界面:本模块是本系统的应用界面,在本界面上集成了本系统的所有功能,共有6个功能菜单和19个子菜单(功能模块),从而实现了本系统从班级管理、档案管理、缴费管理、课程管理、成绩管理等系统的具体功能,同时,在系统管理模块中可以完成对本系统的安全性管理。 图14 系统应用界面Private Declare Function SetWindowPos Lib user32 (ByVal hwnd As Long, ByVal 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 add_Click()qxstr = Executeqx(2)If qxstr = false Or qxstr = readonly Then ss = MsgBox(对不起,你没有管理本功能的权限,请与管理员联系!, vbInformation + vbOKOnly, 警告) Exit SubEnd If Form1.Show modi = False Form1.ZOrder (0)End SubPrivate Sub cjadd_Click()fenshumodi = Falseqxstr = Executeqx(4)If qxstr = false Or qxstr = readonly Then ss = MsgBox(对不起,你没有管理本功能的权限,请与管理员联系!, vbInformation + vbOKOnly, 警告) Exit SubEnd Iffrmcj2.Showfrmcj2.ZOrder 0End SubPrivate Sub cjbrowse_Click()qxstr = Executeqx(4)If qxstr = false Then ss = MsgBox(对不起,你没有管理本功能的权限,请与管理员联系!, vbInformation + vbOKOnly, 警告) Exit SubEnd Iffrmcj1.Showfrmcj1.ZOrder 0End SubPrivate Sub claasfind_Click()qxstr = Executeqx(2)If qxstr = false Then ss = MsgBox(对不起,你没有管理本功能的权限,请与管理员联系!, vbInformation + vbOKOnly, 警告) Exit SubEnd If Form4.Show Form4.ZOrder (0) i = SetWindowPos(Form4.hwnd, -1, 0, 0, 0, 0, 3)End SubPrivate Sub classapp_Click()qxstr = Executeqx(2)If qxstr = false Or qxstr = readonly Then ss = MsgBox(对不起,你没有管理本功能的权限,请与管理员联系!, vbInformation + vbOKOnly, 警告) Exit SubEnd IfFormclass1.Show classmodi = False Formclass1.classload Formclass1.ZOrder (0)End SubPublic Sub clabrowse()txtsql = select * from classFormclass2.ZOrder (0)Formclass2.Caption = 浏览班级设置Formclass2.classshowtitleFormclass2.classshowdataEnd SubPrivate Sub classbrowse_Click()qxstr = Executeqx(2)If qxstr = false Then ss = MsgBox(对不起,你没有管理本功能的权限,请与管理员联系!, vbInformation + vbOKOnly, 警告) Exit SubEnd IfFormclass2.ShowEnd SubPrivate Sub classfind_Click()qxstr = Executeqx(2)If qxstr = false Then ss = MsgBox(对不起,你没有管理本功能的权限,请与管理员联系!, vbInformation + vbOKOnly, 警告) Exit SubEnd If Formclass3.Show Formclass3.ZOrder (0)End SubPrivate Sub find_Click() End SubPrivate Sub classkecheng_Click()qxstr = Executeqx(4)If qxstr = false Then ss = MsgBox(对不起,你没有管理本功能的权限,请与管理员联系!, vbInformation + vbOKOnly, 警告) Exit SubEnd IfFrmclasskecheng1.ShowFrmclasskecheng1.ZOrderEnd SubPrivate Sub denglu2_Click()Frmdenlu.ShowUnload MeEnd SubPrivate Sub jiaofeiadd_Click()qxstr = Executeqx(3)If qxstr = false Or qxstr = readonly Then ss = MsgBox(对不起,你没有管理本功能的权限,请与管理员联系!, vbInformation + vbOKOnly, 警告) Exit SubEnd IfFrmjf1.ShowFrmjf1.ZOrder 0End SubPrivate Sub jiaofeibrowse_Click()qxstr = Executeqx(3)If qxstr = false Then ss = MsgBox(对不起,你没有管理本功能的权限,请与管理员联系!, vbInformation + vbOKOnly, 警告) Exit SubEnd Iffrmjf2.Showfrmjf2.ZOrder 0End SubPrivate Sub jiaofeifind_Click()qxstr = Executeqx(3)If qxstr = false Then ss = MsgBox(对不起,你没有管理本功能的权限,请与管理员联系!, vbInformation + vbOKOnly, 警告) Exit SubEnd IfFrmjf4.ShowEnd SubPrivate Sub jibenkecheng_Click()qxstr = Executeqx(4)If qxstr = false Then ss = MsgBox(对不起,你没有管理本功能的权限,请与管理员联系!, vbInformation + vbOKOnly, 警告) Exit SubEnd Iffrmjiben.Showfrmjiben.ZOrder 0End SubPrivate Sub leixing_Click()qxstr = Executeqx(4)If qxstr = false Then ss = MsgBox(对不起,你没有管理本功能的权限,请与管理员联系!, vbInformation + vbOKOnly, 警告) Exit SubEnd IfFrmleixing.ShowFrmleixing.ZOrder 0End SubPrivate Sub liulan_Click()qxstr = Executeqx(2)If qxstr = false Then ss = MsgBox(对不起,你没有管理本功能的权限,请与管理员联系!, vbInformation + vbOKOnly, 警告) Exit SubEnd If find = False Form3.ShowEnd SubPrivate Sub MDIForm_Load()username = 0001DataEnv1.Connection1.ConnectionString = connstringStatusBar1.Panels(2).Text = NowStatusBar1.Panels(3).Text = 当前操作员: & usernameDim aa As StringSelect Case Executeqx(1)Case admin aa = 超级管理员Case readonly aa = 只读管理员Case Else aa = 普通管理员End SelectStatusBar1.Panels(4).Text = 状态: & aaEnd SubPrivate Sub useradd_Click()qxstr = Executeqx(1)If qxstr = false Or qxstr = readonly Then ss = MsgBox(对不起,你没有管理本功能的权限,请与管理员联系!, vbInformation + vbOKOnly, 警告) Exit SubEnd Iffrmuser1.Showfrmuser1.ZOrder 0End SubPrivate Sub usermodi_Click()qxstr = Executeqx(1)If qxstr = false Then ss = MsgBox(对不起,你没有管理本功能的权限,请与管理员联系!, vbInformation + vbOKOnly, 警告) Exit Sub End Iffrmcpass.ShowEnd SubPrivate Sub xuefeiadd_Click()qxstr = Executeqx(3)If qxstr = false Or qxstr = readonly Then ss = MsgBox(对不起,你没有管理本功能的权限,请与管理员联系!, vbInformation + vbOKOnly, 警告) Exit SubEnd If xuefeimodi = False Dim i As Integer For i = 0 To 3 frmxuefei1.Combo1(i).Enabled = True Next i Me.Caption = 添加班级设置 For i = 0 To 3 frmxuefei1.Combo1(i).Text = Next i frmxuefei1.Text1.Text = frmxuefei1.Show frmxuefei1.ZOrder 0End SubPublic Sub xfbrowse()txtsql = select * from xuefei order by 学期 desc, 年级 desc,专业 descFrmxuefei2.ZOrder (0)Frmxuefei2.Caption = 浏览学费设置Frmxuefei2.xuefeishowtitleFrmxuefei2.xuefeishowdataEnd SubPrivate Sub xuefeibrowse_Click()qxstr = Executeqx(3)If qxstr = false Then ss = MsgBox(对不起,你没有管理本功能的权限,请与管理员联系!, vbInformation + vbOKOnly, 警告) Exit SubEnd If Frmxuefei2.ShowEnd SubPrivate Sub xuefeifind_Click()qxstr = Executeqx(3)If qxstr = false Then ss = MsgBox(对不起,你没有管理本功能的权限,请与管理员联系!, vbInformation + vbOKOnly, 警告) Exit SubEnd If Frmxuefei3.Show Frmxuefei3.ZOrder (0) i = SetWindowPos(Frmxuefei3.hwnd, -1, 0, 0, 0, 0, 3)End Sub4.3用户管理模块:本模块是本系统的安全性设置模块,根据学校不同部门以及不同使用人员对本系统的要求和需要,从而实行了分级管理,对用户的权限和类别进行了分类管理。 图15 用户管理界面Private Sub Command1_Click()If Trim(Text1(0).Text) = Then MsgBox 用户名不能为空!, vbExclamation + vbOKOnly, 警告 Text1(0).SetFocus Exit SubEnd IfIf Trim(Text1(1).Text) = Then MsgBox 密码不能为空!, vbExclamation + vbOKOnly, 警告 Text1(1).SetFocus Exit SubEnd IfIf Trim(Text1(2).Text) = Then MsgBox 确认密码不能为空!, vbExclamation + vbOKOnly, 警告 Text1(2).SetFocus Exit SubEnd IfIf Trim(Text1(1).Text) Trim(Text1(2).Text) Then MsgBox 确认密码不正确!, vbExclamation + vbOKOnly, 警告 Text1(2).SetFocus Exit SubEnd IfDim aa As Integeraa = 0If Option1(2).Value = True Then For i = 0 To 3 If Check1(i).Value = 1 Then aa = 1 Exit For End IfNext iIf aa = 0 Then MsgBox 普通用户至少要有一项权限!, vbExclamation + vbOKOnly, 警告Exit SubEnd IfEnd IfDim mrc As ADODB.Recordsettxtsql = select * from use where username= & Trim(Text1(0).Text) & Set mrc = ExecuteSQL(txtsql)If mrc.EOF = False Then MsgBox 已存在该用户!, vbExclamation + vbOKOnly, 警告 Text1(0).SetFocus Text1(0).SelStart = 0 Text1(0).SelLength = Len(Text1(0).Text) Exit SubEnd Iftxtsql = select * from useSet mrc = ExecuteSQL(txtsql)mrc.AddNew mrc.Fields(0) = Trim(Text1(0).Text) mrc.Fields(1) = Trim(Text1(1).Text)For i = 0 To 2 If Option1(i).Value = True Then Select Case i Case 0 mrc.Fields(admin) = y Case 1 mrc.Fields(readonly) = y Case 2 For j = 0 To 3 If Check1(j).Value = 1 Then Select Case j Case 0 mrc.Fields(qx1) = y Case 1 mrc.Fields(qx2) = y Case 2 mrc.Fields(qx3) = y Case 3 mrc.Fields(qx4) = y End Select End If Next j End Select End If Next i mrc.Update MsgBox 用户添加成功!, vbExclamation + vbOKOnly, 警告 Text1(0).Text = Text1(1).Text = Text1(2).Text = End SubPrivate Sub Command2_Click()Unload MeEnd SubPrivate Sub Form_Load()Option1(2).Value = TrueEnd SubPrivate Sub Form_Resize()Text1(0).SetFocusEnd SubPrivate Sub Option1_Click(Index As Integer)If Index 2 ThenFor i = 0 To 3 Check1(i).Enabled = FalseNext iElseFor i = 0 To 3 Check1(i).Enabled = TrueNext iEnd IfEnd Sub44学生缴费管理模块:因为本系统中有些功能模块具有相似之处,因此在本文只用此模块进行一个简单的说明。其它的相似模块的代码可能参阅本模块的设计思路。 图16 缴费管理界面Public printstr As StringPrivate Sub Command1_Click() Dim dbSource As Database Set dbSource = OpenDatabase(xs.mdb) dbSource.Execute (SELECT * INto 班级一览表 IN 学生管理一览表.xls EXCEL 5.0; FROM class) z = MsgBox(成功!, vbOKOnly, 查询)End SubPublic Sub classshowtitle() Dim i As Integer MSF1.Clear With MSF1 .Cols = 8 .TextMatrix(0, 1) = 年级 .TextMatrix(0, 2) = 班级 .TextMatrix(0, 3) = 教室 .TextMatrix(0, 4) = 年制 .TextMatrix(0, 5) = 专业 .TextMatrix(0, 6) = 班主任 .TextMatrix(0, 7) = 备注 .ColWidth(0) = 100 .ColWidth(1) = 1300 .ColWidth(2) = 1200 .ColWidth(3) = 800 .ColWidth(4) = 800 .ColWidth(5) = 800 .ColWidth(6) = 800 .ColWidth(7) = 5000 .FixedRows = 1 For i = 1 To 7 .ColAlignment(i) = 0 Next i .FillStyle = flexFillSingle .Col = 0 .Row = 0 .RowSel = 1 .ColSel = .Cols - 1 .CellAlignment = 4 .Row = 1 End WithEnd SubPublic Sub classshowdata()Dim j As IntegerDim i As IntegerDim mrc1 As ADODB.Recordset Set mrc1 = ExecuteSQL(Trim(txtsql) If mrc1.EOF = False Then mrc1.MoveFirst With MSF1 .Rows = 1 Do While Not mrc1.EOF .Rows = .Rows + 1 For i = 1 To mrc1.Fields.Count .TextMatrix(.Rows - 1, i) = mrc1.Fields(i - 1) Next i mrc1.MoveNext Loop mrc1.Close End With Else If classfind = True Then Formclass2.Hide Formclass3.Show zzz = MsgBox(对不起,没有此班级的档案记录!, vbOKOnly, 查询) Formclass3.ZOrder (0) Formclass3.Text1(0).SetFocus End If End IfEnd SubPrivate Sub cmddel_Click()qxstr = Executeqx(2) If qxstr = readonly Then ss = MsgBox(对不起,你是只读用户不能删除记录,请与管理员联系!, vbInformation + vbOKOnly, 警告) Exit Sub End If Dim mrc As ADODB.Recordset Dim msgtext As String Dim intcount As Integer If Trim(Me.MSF1.TextMatrix(MSF1.Row, 1
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!