Visual Basic 程序设计1 (18).ppt
Visual Basic 程序设计程序设计第十九讲第十九讲 2课时课时教学目标及基本要求教学目标及基本要求了解学生管理系统的系统设计。了解学生管理系统的系统设计。熟悉用熟悉用Visual Basic语言对学生管理系统语言对学生管理系统的程序开发。的程序开发。掌握用掌握用Visual Basic对系统的主要功能进对系统的主要功能进行设计。行设计。教学重点教学重点 Visual Basic集成开发环境;集成开发环境;学生管理系统的系统设计的步骤;学生管理系统的系统设计的步骤;主要功能的模块设计;主要功能的模块设计;系统管理系统的数据库设计。系统管理系统的数据库设计。教学难点教学难点 数据库的连接数据库的连接教学内容教学内容 学生管理系统的系统设计学生管理系统的系统设计学生管理系统的程序开发学生管理系统的程序开发学生管理系统的主要功能模块程序设计学生管理系统的主要功能模块程序设计学生管理系统的系统设计学生管理系统的系统设计 本本学学生生管管理理系系统统的的主主要要特特点点有有:一一是是可可以以对对学学生生的的入入学学档档案案资资料料、课课程程成成绩绩等等进进行行全全方方位位的的管管理理;二二是是界界面面设设计计简简单单易易懂懂,操操作作简简便便;三三是是简简单单实实用用的的数据库、报表设计及打印功能。数据库、报表设计及打印功能。学生管理系统的需求分析学生管理系统的需求分析 为更好的做好学生档案资料管理这项工作,提高为更好的做好学生档案资料管理这项工作,提高工作效率,有必要开发一套学生管理系统。工作效率,有必要开发一套学生管理系统。校在目前的学生管理中,虽然应用了计算机进行校在目前的学生管理中,虽然应用了计算机进行管理,摆脱了全手工的管理方式,但由于没有一管理,摆脱了全手工的管理方式,但由于没有一套统一的方式、方法和软件系统支持,仍然存在套统一的方式、方法和软件系统支持,仍然存在着诸如数据分散、不一致、可利用率低等的问题,着诸如数据分散、不一致、可利用率低等的问题,以致影响了工作效率的进一步提高。以致影响了工作效率的进一步提高。学生管理系统的实现,可以使学校更方便的对学学生管理系统的实现,可以使学校更方便的对学生档案、课程成绩及班级等进行查询和录入,实生档案、课程成绩及班级等进行查询和录入,实现学生管理的信息化与现代化。现学生管理的信息化与现代化。学生管理系统的系统设计学生管理系统的系统设计学生管理系统的系统设计学生管理系统的系统设计学生管理系统的功能模块设计学生管理系统的功能模块设计 系统管理模块班级管理模块学生档案管理模块课程管理模块成绩管理模块打印报表模块系统维护模块图15-1 学生管理系统功能结构图学生管理系统的系统设计学生管理系统的系统设计学生管理系统的数据库设计学生管理系统的数据库设计 系统数据库名称为系统数据库名称为xsgl.mdb,其中包括:其中包括:基本课程数据表(allkecheng);成绩数据表(cj);班级数据表(class);班级课程数据表(classkecheng);考试类型数据表(kaoshileixing);用户名数据表(use);学生档案信息数据表(xj)。学生管理系统的系统设计学生管理系统的系统设计学生管理系统的系统设计学生管理系统的系统设计各个数据表的数据结构如下:各个数据表的数据结构如下:表15-1 基本课程数据表(allkecheng)字段名称字段类型字段大小是否为空描述课程名称文本20否课程名称出版社文本30否出版社名称表15-2成绩数据表(cj)字段名称字段类型字段大小是否为空描述学号文本10否学号学期文本50否学期类型文本16否考试类型课程名称文本20否课程名称分数数字单精度否成绩分数表15-3班级数据表(class)字段名称字段类型字段大小是否为空描述年级文本16否年级班级文本20否班级教室文本5否教室编号年制文本8否学年制专业文本16否专业名称班主任任文本8否班主任名称备注备注无是备注表15-4 班级课程数据表(classkecheng)字段名称字段类型字段大小是否为空描述年级文本16否年级专业文本12否专业名称年制文本8否学年制学期文本50否学期课程名称文本20否课程名称学生管理系统的系统设计学生管理系统的系统设计表15-5考试类型数据表(kaoshileixing)字段名称字段类型字段大小是否为空描述 类型文本10否考试类型表15-6用户名数据表(use)字段名称字段类型字段大小是否为空描述username文本20否用户名password文本20否密码Admin文本2否管理权限readonly文本2否是否只读Qx1文本2否权限1Qx2文本2否权限2Qx3文本2否权限3学生管理系统的系统设计学生管理系统的系统设计表15-7学生档案信息数据表(xj)字段名称字段类型字段大小是否为空描述学号文本5否学号姓名文本8否姓名性别文本2否性别班级文本10否班级出生年月日期/时间自动否出生年月家庭住址文本30否家庭住址邮政编码数字长整型否邮政编码联系电话数字长整型否联系电话入学时间日期/时间自动否入学时间备注备注无是备注说明学生管理系统流程图学生管理系统流程图 学生管理系统的程序开发学生管理系统的程序开发 学生管理系统的程序运行学生管理系统的程序运行Visual Basic与数据库的连接与数据库的连接 通过连接字符串模块通过连接字符串模块Modulel.bas来建立与数据库来建立与数据库的连接的连接,代码如下:代码如下:PublicFunctionconnstring()AsStringconnstring=provider=Microsoft.Jet.OLEDB.4.0;Datasource=&App.Path&/xsgl.mdbEndFunction学生管理系统的程序开发学生管理系统的程序开发 程序运行结果程序运行结果(1)运行程序首先看到欢迎界面,如图15-3所示。然后进入登录界面如图15-4所示,输入用户名和密码(初始用户名和密码分别为“admin”和“123”),单击“确定”,进入系统主程序界面,如图15-5所示。图15-3系统欢迎界面图15-4系统登录界面学生管理系统的程序开发学生管理系统的程序开发 图15-5系统主程序界面学生管理系统的程序开发学生管理系统的程序开发(2)在系统主界面中选择【系统管理】|【添加用户】菜单命令即可进入【新增用户】界面,如图15-6所示。在该界面中,可以建立新用户,设置使用权限.图15-6新增用户界面学生管理系统的程序开发学生管理系统的程序开发(3)在系统主界面中选择【班级管理】|【添加班级】菜单命令或单击工具栏中的 按钮,进入添加班级资料设置界面,如图15-7所示。用户可以在这个窗口中设置班级资料,单击【确定】按钮,若无重复班级则显示添加成功,否则添加失败。图15-7添加班级信息设置界面学生管理系统的程序开发学生管理系统的程序开发 图15-8浏览班级资料窗体图15-9修改班级设置窗体学生管理系统的程序开发学生管理系统的程序开发 单击工具栏中的【修改】按钮可以在此图所示窗体中进行班级资料修改。选择【班级管理】|【班级浏览】菜单命令,可以浏览班级资料图15-10班级设置查询窗体学生管理系统的程序开发学生管理系统的程序开发 单击工具栏的【查找】按钮就会打开班级查询窗体。选择【班级管理】|【班级查询】菜单命令或单击工具栏中的按钮,也会弹出。单击工具栏中的【打印】按钮会让用户选择【打印当前记录】还是【打印全部记录】,相应地会得到打印预览窗体。图15-11打印预览窗体图15-12学生入学档案登记窗体学生管理系统的程序开发学生管理系统的程序开发(4)在系统主界面中选择【学生档案管理】【档案添加】菜单命令或单击工具栏中的 按钮,进入学生入学档案登记界面,如图15-12所示。其中班级只能从已经设置好的班级中选择,否则不能添加。图15-13浏览学生档案界面学生管理系统的程序开发学生管理系统的程序开发 选择【学生档案管理】|【档案浏览】菜单命令或单击工具栏中的 按钮,可以浏览学生信息,如图15-13所示,单击左侧的年级或班级名,右侧就会相应地显示对应的学生信息。图15-14学生档案资料修改窗体 图15-15学生档案查询窗体学生管理系统的程序开发学生管理系统的程序开发 选择【学生档案管理】|【档案浏览】菜单命令或单击工具栏中的 按钮,可以浏览学生信息,如图15-13所示,单击左侧的年级或班级名,右侧就会相应地显示对应的学生信息。在图15-13中单击工具栏中的【修改】按钮可以在如图15-14所示窗体中进行学生档案资料修改。单击工具栏的【查找】按钮就会打开学生档案查询窗体,如图15-15所示。图15-16学生档案打印预览窗体学生管理系统的程序开发学生管理系统的程序开发 在图15-13中单击工具栏中的【删除】按钮可以删除当前的学生档案资料。单击工具栏中的【打印】按钮会让用户选择【打印当前记录】还是【打印全部记录】,相应地会得到打印预览窗体,如图15-16所示。(5)在系统主界面中选择【课程管理】【基本课程设置】菜单命令,进入基本课程设置窗体,如图15-17所示。选择【课程管理】【班级课程设置】菜单命令,进入到班级课程设置窗体,如图15-18所示。图15-17基本课程设置窗体 图15-18班级课程设置窗体学生管理系统的程序开发学生管理系统的程序开发(6)在系统主界面中选择【成绩管理】|【考试类型设置】菜单命令,进入考试类型设置窗体,如图15-19所示。选择【成绩管理】|【成绩录入】菜单命令或单击工具栏中的 按钮,进入到成绩录入窗体,如图15-20所示。选择学期、班级、类型、学号等信息,自动加载所对应的考试科目。图15-19考试类型设置窗体 图15-20成绩录入窗体学生管理系统的程序开发学生管理系统的程序开发 选择【成绩管理】【成绩浏览】菜单命令或单击工具栏中的 按钮,就可以浏览学生成绩信息,如图15-21所示。选择年级、班级、学期、类型就可以查看相应学生的成绩。图15-21成绩浏览窗体学生管理系统的程序开发学生管理系统的程序开发(7)在系统主界面中选择【打印报表】|【学生档案信息】菜单命令或单击工具栏中的 按钮,进入如图15-16所示的学生档案打印预览窗体。选择【打印报表】|【学生班级信息】菜单命令,进入如图15-11所示的学生班级信息打印预览窗体。学生管理系统的程序开发学生管理系统的程序开发(8)在系统主界面中选择【系统维护】|【数据库备份】菜单命令或单击工具栏中的 按钮,就可以进入数据库备份窗体,如图15-22所示,选择输出磁盘位置和文件夹即可。选择【系统维护】|【关于系统】菜单命令,就可以进入关于学生管理系统窗体,显示该系统的相关信息,如图15-23所示。图15-22数据库备份窗体 图15-23关于学生管理系统窗体学生管理系统的程序开发学生管理系统的程序开发 本节只介绍几个重要模块的实现过程,其他模块的详细代码请参见本书提供的学生管理系统文件夹的源代码(可在人民邮电出版社的教学与服务资源网上下载)。在Visual Basic编程的过程中需要用到很多ActivceX控件,所以在编程以前必须添加这些部件。通过Visual Basic界面,选择【工程】|【部件】菜单命令,然后按照图15-24所示选择相应的部件,各个部件的类型及其用法请参照相关文献。图15-24控件选择窗体学生管理系统的主要功能模块程序设计学生管理系统的主要功能模块程序设计公共模块公共模块 公共模块(Modulel.bas)主要由3个函数组成:函数ExecuteSQL用于执行相应的SQL命令;函数Connstring用于连接字符串;函数Executeqx用于检查用户的权限。具体代码见书本。学生管理系统的主要功能模块程序设计学生管理系统的主要功能模块程序设计班级管理模块 班级管理模块、学生档案管理模块功能类似,在此以班级管理模块为主介绍,其他模块请参见源代码。在班级管理模块中,用户可以添加、修改、删除、查找、浏览班级信息。1frm添加班级资料.frm窗体“添加班级资料设置”所对应的窗体frm添加班级资料.frm,如图15-7所示,“添加班级资料设置”和“修改班级资料”都是由这一窗体实现的,此窗体的代码主要有两个功能:使用此窗体可以应用于“添加”和“修改”两种状态;根据条件,确定是否可以“添加”或“修改”班级资料。学生管理系统的主要功能模块程序设计学生管理系统的主要功能模块程序设计PublicSubclassload()DimmrcAsADODB.RecordsetIfclassmodiThen如果是修改状态Me.Caption=修改班级设置classstr=select*fromclasswhere班级=&Trim(frm班级资料浏览.MSF1.TextMatrix(frm班级资料浏览.MSF1.Row,2)&Setmrc=ExecuteSQL(classstr)mrc.MoveFirstFori=0To6Text1(i).Text=mrc.Fields(i)Nextimrc.CloseElseMe.Caption=添加班级设置Fori=0To6Text1(i).Text=NextiEndIfEndSub学生管理系统的主要功能模块程序设计学生管理系统的主要功能模块程序设计根据条件,确定是否可以“添加”或“修改”班级资料PrivateSubCommand1_Click()Forj=0To5IfText1(j)=Thenss=MsgBox(Label2(j).Caption&不能为空!,vbExclamation+vbOKOnly,警告)Text1(j).SetFocusText1(j).SelStart=0Text1(j).SelLength=Len(Text1(j).Text)ExitSubEndIfNext学生管理系统的主要功能模块程序设计学生管理系统的主要功能模块程序设计DimmrcAsADODB.RecordsetIfclassmodi=FalseThenclassstr=select*fromclasswhere班级=&Trim(Text1(1).Text)&Setmrc=ExecuteSQL(classstr)Ifmrc.EOF=FalseThensss=MsgBox(已经存在该班级的设置,不能重复!,vbonly,警告)Text1(1).SetFocusText1(1).SelStart=0Text1(1).SelLength=Len(Text1(1).Text)mrc.CloseExitSubEndIfEndIfclassstr=delete*fromclasswhere班级=&Trim(Text1(1).Text)&Setmrc=ExecuteSQL(classstr)classstr=select*fromclassSetmrc=ExecuteSQL(classstr)mrc.AddNewFori=0To6IfText1(6).Text=ThenText1(6).Text=无EndIfmrc.Fields(i)=Text1(i).TextNextimrc.Update学生管理系统的主要功能模块程序设计学生管理系统的主要功能模块程序设计IfclassmodiThenUnloadMeElseForj=0To6Text1(j)=NextEndIfEndSub退出“添加”或“修改”PrivateSubCommand2_Click()UnloadMeEndSub2frm班级资料浏览.frm窗体frm班级资料浏览.frm窗体对应的是【班级浏览】功能,如图15-8所示,这一窗体比较复杂,应用了treeview、MSFlexGrid、toolbar控件和VisualBasic自带的报表设计器,具体使用参看有关资料,窗体加载时会加载班级资料到treeview中,程序代码如下:显示treeview的内容PublicSubclasstree()TreeView1.Nodes.ClearDimnodexAsNodeDimmrcAsADODB.RecordsetDimmrc1AsADODB.RecordsetDimstrAsStringDimaAsString学生管理系统的主要功能模块程序设计学生管理系统的主要功能模块程序设计 a=年级TreeView1.LineStyle=tvwRootLinesstr=selectdistinct年级fromclassorderby年级Setmrc=ExecuteSQL(str)str=selectdistinct年级,班级fromclassorderby年级,班级Setmrc1=ExecuteSQL(str)mrc.MoveFirstDoUntilmrc.EOFmrc1.MoveFirstSetnodex=TreeView1.Nodes.add(,a,mrc.Fields(0),1,1)学生管理系统的主要功能模块程序设计学生管理系统的主要功能模块程序设计DoWhileNotmrc1.EOFIfmrc1.Fields(0)=mrc.Fields(0)ThenSetnodex=TreeView1.Nodes.add(a,tvwChild,mrc1.Fields(1),2,2)EndIfmrc1.MoveNextLoopa=a&1mrc.MoveNextLoopmrc1.Closemrc.CloseSetmrc=NothingSetmrc1=NothingEndSub学生管理系统的主要功能模块程序设计学生管理系统的主要功能模块程序设计对于MSFlexGrid,可以通过函数classshowtitle添加标题,通过classshowdata函数添加数据。这两个函数的具体代码如下:显示MSFlexGrid的标题PublicSubclassshowtitle()DimiAsIntegerMSF1.ClearWithMSF1.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)=200.ColWidth(1)=800.ColWidth(2)=1200.ColWidth(3)=800.ColWidth(4)=700.ColWidth(5)=1400.ColWidth(6)=700.ColWidth(7)=4000.FixedRows=1Fori=1To7.ColAlignment(i)=0Nexti.FillStyle=flexFillSingle.Col=0.Row=0.RowSel=1学生管理系统的主要功能模块程序设计学生管理系统的主要功能模块程序设计.ColSel=.Cols-1.CellAlignment=4.Row=1EndWithEndSub显示MSFlexGrid的内容PublicSubclassshowdata()DimjAsIntegerDimiAsIntegerDimmrc1AsADODB.RecordsetSetmrc1=ExecuteSQL(Trim(txtsql)Ifmrc1.EOF=FalseThenmrc1.MoveFirstWithMSF1.Rows=1DoWhileNotmrc1.EOF.Rows=.Rows+1Fori=1Tomrc1.Fields.Count.TextMatrix(.Rows-1,i)=mrc1.Fields(i-1)Nextimrc1.MoveNextLoopmrc1.CloseEndWith学生管理系统的主要功能模块程序设计学生管理系统的主要功能模块程序设计ElseIfclassfind=TrueThenfrm班级资料浏览.Hidefrm班级资料查询.Showzzz=MsgBox(对不起,没有此班级的档案记录!,vbOKOnly,查询)frm班级资料查询.ZOrder(0)frm班级资料查询.Text1(0).SetFocusEndIfEndIfEndSub单击treeview,在MSFlexGrid会显示相应的数据。Treeview和MSFlexGrid之间的联系,可以通过以下代码来实现。建立treeview和MSFlexGrid之间的联系PrivateSubTreeView1_DblClick()OnErrorGoToqqIfTreeView1.SelectedItem.Index=0ThenMSF1.ClearExitSubEndIf学生管理系统的主要功能模块程序设计学生管理系统的主要功能模块程序设计 txtsql=TreeView1.Nodes.Item(TreeView1.SelectedItem.Index)txtsql=select*fromclasswhere年级=&Trim(txtsql)&or班级=&Trim(txtsql)&orderby年级,班级printstr=txtsqlMe.Caption=浏览班级资料Me.classshowtitleMe.classshowdataExitSubqq:MSF1.ClearEndSub学生管理系统的主要功能模块程序设计学生管理系统的主要功能模块程序设计3frm班级资料查询班级资料查询.frm窗体窗体frm班级资料查询.frm窗体对应的功能是实现班级资料查询的功能,其窗体式样如图15-10所示,具体代码如下:实现班级资料查询的功能PrivateSubCommand1_Click()txtsql=IfText1(0).TextThenIftxtsql=Thentxtsql=年级=&Trim(Text1(0).Text)&Elsetxtsql=txtsql&and年级=&Trim(Text1(0).Text)&EndIfEndIf学生管理系统的主要功能模块程序设计学生管理系统的主要功能模块程序设计 IfText1(1).TextThenIftxtsql=Thentxtsql=班级=&Trim(Text1(1).Text)&Elsetxtsql=txtsql&and班级=&Trim(Text1(1).Text)&EndIfEndIfIfText1(2).TextThenaa=1Iftxtsql=Thentxtsql=专业=&Trim(Text1(2).Text)&Elsetxtsql=txtsql&and专业=&Trim(Text1(2).Text)&EndIfEndIf学生管理系统的主要功能模块程序设计学生管理系统的主要功能模块程序设计 Iftxtsql=Thenss=MsgBox(你至少要输入一个条件以上才能查询!,警告)Text1(0).SetFocusExitSubEndIftxtsql=select*fromclasswhere&txtsqlDimmrcAsADODB.RecordsetSetmrc=ExecuteSQL(txtsql)Ifmrc.EOF=TrueThenzzz=MsgBox(对不起,没有此班级的档案记录!,vbOKOnly,查询)frm班级资料查询.ZOrder(0)frm班级资料查询.Text1(0).SetFocusExitSubEndIf学生管理系统的主要功能模块程序设计学生管理系统的主要功能模块程序设计 frm班级资料浏览.printstr=txtsqlclassfind=Truefrm班级资料浏览.Showfrm班级资料浏览.classshowtitlefrm班级资料浏览.classshowdatafrm班级资料浏览.Caption=班级设置查询结果frm班级资料浏览.ZOrder(0)EndSub学生管理系统的主要功能模块程序设计学生管理系统的主要功能模块程序设计课程管理模块课程管理模块 课程管理模块中可以设置基本课程,然后给相应年级的专业分配课程。frm基本课程.frm窗体对应基本课程设置,窗体式样如图15-17所示,基本课程设置窗体具体代码请参见源代码。frm设置班级课程.frm窗体对应班级课程设置,其窗体式样如图15-18所示,在这里可以给相应年级的专业分配课程,年级、专业、学期和年制随窗体自动加载。学生管理系统的主要功能模块程序设计学生管理系统的主要功能模块程序设计成绩管理模块成绩管理模块 在成绩管理模块中可以实现考试类型设置、录入考试成绩和浏览考试成绩功能,其中frm考试类型.frm窗体实现考试类型设置,比较简单不作介绍,请参见程序源代码。1frm录入成绩.frm窗体 frm录入成绩.frm窗体完成的是成绩录入功能,因为每个班级的课程数量和课程内容都不一样,程序中采用通过控件索引来完成在单个窗体录入所有的课程成绩,其代码如下:学生管理系统的主要功能模块程序设计学生管理系统的主要功能模块程序设计PrivateSubfillkencheng()DimmrcAsADODB.RecordsetDimmrc1AsADODB.RecordsetFori=0To13Label1(i).Visible=FalseText1(i).Visible=FalseNextitxtsql=select年级,专业,年制fromclasswhere班级=&Trim(Combo2.Text)&Setmrc1=ExecuteSQL(txtsql)txtsql=select课程名称fromclasskechengwhere学期=&Trim(Combo1.Text)&and年级=&Trim(mrc1.Fields(0)&and专业=&Trim(mrc1.Fields(1)&and年制=&Trim(mrc1.Fields(2)&Setmrc1=NothingSetmrc=ExecuteSQL(txtsql)学生管理系统的主要功能模块程序设计学生管理系统的主要功能模块程序设计DimssssAsStringIfmrc.EOF=TrueThensss=MsgBox(请先设置班级课程!,vbExclamation+vbOKOnly,警告)Command1.Enabled=FalseCommand2.Enabled=FalseLabel1(0).Visible=FalseExitSubEndIfCommand1.Enabled=TrueCommand2.Enabled=Truemrc.MoveFirstkechengcount=mrc.RecordCount学生管理系统的主要功能模块程序设计学生管理系统的主要功能模块程序设计Fori=0To(mrc.RecordCount-1)Label1(i).Visible=TrueText1(i).Visible=TrueLabel1(i).Caption=mrc.Fields(0)Text1(i).Text=0mrc.MoveNextNextiText1(0).SetFocusFrame3.Height=410+Int(i/2+0.5)*360Frame1.Height=2000+Frame3.HeightMe.Height=1800+Frame1.HeightSetmrc=NothingEndSub学生管理系统的主要功能模块程序设计学生管理系统的主要功能模块程序设计2frm成绩浏览.frm窗体frm成绩浏览.frm窗体完成的是成绩浏览功能,为了使用户能够很直观地发现学生成绩不及格,将不及格的课程成绩设为红色,具体代码如下:Forj=1Tomrc2.RecordCountMSF1.Col=gIfVal(mrc2.Fields(分数)60ThenMSF1.CellForeColor=vbRedEndIfMSF1.TextMatrix(MSF1.Row,g)=mrc2.Fields(分数)sum=sum+mrc2.Fields(分数)g=g+1mrc2.MoveNextNextj学生管理系统的主要功能模块程序设计学生管理系统的主要功能模块程序设计MSF1.TextMatrix(MSF1.Row,g)=sumDimavg1AsSingleavg1=Int(sum/(mrc2.RecordCount)*10+0.5)/10MSF1.Col=g+1Ifavg160ThenMSF1.CellForeColor=vbRedEndIf学生管理系统的主要功能模块程序设计学生管理系统的主要功能模块程序设计打印报表模块打印报表模块可以实现学生档案信息打印和学生班级信息打印功能,要打印报表首先要进行报表设计,报表设计是采用VisualBasic自带的报表设计器来实现的,这部分的设计工作,限于篇幅在此不作介绍,具体请参见系统设计源程序。学生管理系统的主要功能模块程序设计学生管理系统的主要功能模块程序设计系统维护模块系统维护模块可以显示关于学生管理系统,窗体界面如图15-23所示和系统数据库备份功能,窗体界面如图15-22所示。程序设计简单,限于篇幅在此不作介绍,具体请参见程序源代码。学生管理系统的主要功能模块程序设计学生管理系统的主要功能模块程序设计