学校排课管理信息系统

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第4章学校排课管理信息系统第4章学校排课管理信息系统4.1系统开发的功能分析4.2设计好自己的数据库4.3系统开发过程的实现4.4应用程序的打包和发布4.5相关开发技术介绍4.6最终运行结果的查看第4章学校排课管理信息系统4.1系统开发的功能分析4.1.1设计目标本管理信息系统的主要功能是把各系别、班级或各授课部门的课程进行了汇总,然后根据学校的教学计划制订各班级的课程编排表。随着学校每年的扩招和专业的不断细化,学校班级数、课程门数越来越多,每门课又涉及很多信息,如果仍然采用手工排课,则不可避免地会出现教室资源冲突或教师资源冲突的情况。第4章学校排课管理信息系统4.1.2需要实现的系统功能本管理信息系统的开发就是为了使纷繁、复杂的课表编排变得更为准确、合理和快速而设计的。在确定了本系统的设计目标之后,在开发本系统时,在本系统中需要实现的系统功能主要有如下所述几点:(1)提供灵活的浏览和查找功能。可以查看某个班级所有课程的信息以及对课程信息提供查找方式。第4章学校排课管理信息系统(2)掌握学校所有的课程和教师信息,包括课程的时间安排、班级以及任课教师姓名。(3)可以对课程信息和教师信息进行删除和编辑。(4)实现对课程进行变动管理,并实现尽可能的自动排序功能。第4章学校排课管理信息系统4.1.3开发和运行环境开发工具:VisualBasic6.0中文版,后台所用数据库是Access2000。运行环境:Windows9x、WindowsNT、Windows2000或WindowsXP/2003操作系统。第4章学校排课管理信息系统4.1.4系统功能模块的设计根据日常工作中的实际需求,结合实际排课情况的模块分析,本系统在设计时所要实现的主要功能如下:1.实现数据装载鉴于本系统数据流量比较庞大的情况,在本系统启动时必须有一个数据装载模块,等到数据完全被装载后才能正常进入本系统执行程序。第4章学校排课管理信息系统2.录入教职员工信息为保证数据库的完整性和为后面的排课提供可靠的数据保证,录入教职员工的某些基本信息,如必需的教职员工姓名、专业和简介等信息。3.课程编排的管理课程编排的管理是本系统的核心部分,其作用是在自动排序的基础上实现手工排序。第4章学校排课管理信息系统4.教职员工代课信息查询教职员工代课信息查询给用户提供了一个排课结果查询的界面,利用此界面应该能查询到某个教师在一周内代课的所有班级和所带课程的上课时间以及课程名称等内容。5.本学期课程设置本学期课程设置模块的功能是设置开设的课程名称。本系统的总体功能结构图如图4-1-1所示。第4章学校排课管理信息系统图4-1-1本系统的总体功能结构图第4章学校排课管理信息系统4.2设计好自己的数据库1.班级情况信息表(classArray)的设计班级库是描述班级信息的数据表,包括以下部分:班级编号(cClassCode)、上课日期(iTimeW)、上课节次(iTimeN)、课程名称(cSjName)。在数据库中创建一个表,表名为“ClassArray”,其字段结构如表4-2-1所示。其中,cClassCode(班级编号)字段为该表的主关键字(PrimaryKey,PK),它惟一标识了一条班级记录。第4章学校排课管理信息系统表4-2-1班级情况信息表(ClassArray)字段名字段说明类型宽度备注cClassCode班级编号文本7主关键字iTimeW上课日期数字不能为空iTimeN上课节次数字不能为空cSjName课程名称文本7不能为空第4章学校排课管理信息系统2.专业名称表(Subject)的设计专业名称表是描述专业信息的数据表,所存放的域只有一个专业名称(cSjName)。在数据库中创建—个表,表名为Subject,其字段结构如表4-2-2所示。其中,cSjName(专业名称)字段为该表的外部关键字(ForeignKey,FK),它与ClassArray表的cSjName字段构成了参照完整性。第4章学校排课管理信息系统表4-2-2专业名称表(Subject)字段名字段说明类型宽度备注cSjName专业名称文本7外部关键字第4章学校排课管理信息系统3.教师信息表(Teacher)的设计教师信息表是描述教师信息的数据表,包括以下部分:教师姓名(cTrName)、年龄(iAge)、简单评述(cTrDetails)等部分。在数据库中创建一个表,表名为Teacher,其字段结构如表4-2-3所示。其中,cTrName(教师姓名)字段为该表的主关键字(PrimaryKey,PK),它惟一标识了一条教师记录。第4章学校排课管理信息系统表4-2-3教师信息表(Teacher)字段名字段说明类型宽度备注cTrName教师姓名文本7主关键字iAge年龄数字不能为空cTrDetails简单评述文本255可以为空第4章学校排课管理信息系统4.教师代课情况表(trClass)的设计教师代课情况表是描述教师代课信息的数据表,包括以下部分:班级编号(cClassCode)、专业名称(cSubject)、代课教师(cTeacher)等部分。在数据库中创建一个表,表名为trClass,其字段结构如表4-2-4所示。其中,cSubject(专业名称)字段为该表的外部关键字(ForeignKey,FK),它与Subject表的cSjName字段构成了参照完整性。第4章学校排课管理信息系统表4-2-4教师代课表(trClass)字段名字段说明类型宽度备注cClassCode班级编号文本7不能为空cSubject专业名称文本7不能为空cTeacher代课教师文本7不能为空第4章学校排课管理信息系统图4-2-1数据库关系设计图中各表之间的关系第4章学校排课管理信息系统4.3系统开发过程的实现4.3.1主窗体界面(frmSplash)的设计在工程中添加类型为“展示屏幕”的窗体,并将其命名为frmLoading.frm。本窗口的设计视图如图4-3-1所示。第4章学校排课管理信息系统图4-3-1frmSplash窗口设计视图第4章学校排课管理信息系统在设计好本窗体中的各控件之后,我们还需要对该窗体上的控件及其属性进行一些具体设置。对于本窗体中的各控件,大家可以根据自己对窗体中各控件设置的喜好自行进行设置。各控件设置的属性随设置的不同而有所改变。下面再来看看本窗体代码的设计。由于frmLoading窗体是本系统启动时的窗体,因此,当frmLoading窗体被加载时,通常需要加载其背景图像,并设置图像的位置和大小,最后再开启时钟。第4章学校排课管理信息系统窗体加载事件的处理函数代码如下:PrivateSubForm_Load()'设置鼠标的指针Me.MousePointer=11DimX,YAsInteger'加载背景图像ImgBg.Picture=LoadPicture(App.Path+\back.jpg)'设置要加载图像的大小和位置ImgBg.Width=Form1.WidthImgBg.Height=Form1.Height第4章学校排课管理信息系统X=(Screen.Width-Form1.Width)/2Y=(Screen.Height-Form1.Height)/2'设置本窗口的位置Form1.Left=XForm1.Top=Y'开启窗口时钟Timer1.Enabled=TrueEndSub第4章学校排课管理信息系统程序在运行到这里的时候,如果出现时钟的计时超过了一定数量,就会出现窗口自动消失,发出提示声音并打开用户登录窗口的情况。具体设计代码如下:PrivateSubTimer1_Timer()'Splash窗口消失UnloadMe'打开用户要登录的窗口fmStart.Show'发出提示声音Beep第4章学校排课管理信息系统4.3.2设计系统的登录窗体(frmLogin)由于本系统的用户分为系统管理员和教师两大类,因而在设计登录窗体的时候,就需要在登录窗体中增加一个ComboBox控件,用来表明用户的身份。其中0表示系统管理员身份,1表示教师类用户身份。同时,为了避免非法用户的干扰,对于用户登录窗口,还需要设置如果用户连续输错了三次密码,则将会自动退出系统的情况。第4章学校排课管理信息系统图4-3-2登录窗体的界面第4章学校排课管理信息系统本窗口的设计视图如图4-3-2所示,具体代码如下:PublicLoginSucceededAsBooleanPrivateSubcmdCancel_Click()LoginSucceeded=FalseUnloadfmStartEndSub第4章学校排课管理信息系统PrivateSubcmdOK_Click()IftxtPassword=passwordThenLoginSucceeded=TrueMe.HidefmStart.ShowElseMsgBoxInvalidPassword,tryagain!,,LogintxtPassword.SetFocusSendKeys{Home}+{End}EndIfEndSub第4章学校排课管理信息系统PrivateSubForm_Load()LoadfmStartfmStart.HideEndSub第4章学校排课管理信息系统4.3.3实现程序主窗体(frmStart)的设计系统的主程序frmStart窗体不但是整个系统的容器,同时还是整个系统的主要操作界面,也是进入本系统首先出现的系统操作界面。由于本系统采取了基于对话框模式的功能,如图4-3-3所示,因此,用户只需要做一个简单的功能选择就可以进入相应的功能模块。第4章学校排课管理信息系统图4-3-3程序主窗体frmStart的设计与运行界面第4章学校排课管理信息系统1.定义窗体级变量本段代码主要用来定义临时字符串变量和记录时钟周期的变量。具体代码如下:OptionExplicitDimstrRunAsStringDimiTpAsInteger'iTp记录时钟周期第4章学校排课管理信息系统2.单击【确定】按钮的处理函数当用户在单击【确定】按钮时,系统能够实现根据用户的选择确定进入相应的模块,这时候,就需要在本窗体代码中接着添加如下代码:第4章学校排课管理信息系统PrivateSubCommand1_Click()'将鼠标指针设为等待Me.MousePointer=11'开启时钟Timer1.Enabled=TruestrRun=LTrim$(RTrim$(Combo1.Text))'对应该进入的模块进行判断SelectCasestrRunCaseCombo1.List(0):Form1.Show第4章学校排课管理信息系统CaseCombo1.List(1):Form2.ShowCaseCombo1.List(2):Form3.ShowCaseCombo1.List(3):Form4.ShowCaseCombo1.List(4):Form5.ShowCaseCombo1.List(5):Form6.Show第4章学校排课管理信息系统CaseElse:MsgBox请选择一个正确的操作项,vbInformation+vbOKOnly,操作EndSelectEndSub第4章学校排课管理信息系统3.单击【作者信息】按钮的处理函数当用户单击【作者信息】按钮时,则会弹出【关于】对话框,显示有关本系统的名称、版本和作者等信息。具体代码如下:PrivateSubCommand2_Click()frmAbout.Show'这里的frmAbout就是“关于”对话框的窗体EndSub第4章学校排课管理信息系统4.窗口装载预处理由于还需要在进入窗口装载之前做一些预处理工作,因此,需要在程序中加入如下代码:第4章学校排课管理信息系统PrivateSubForm_Load()Combo1.AddItem教职员入库信息Combo1.AddItem排课管理Combo1.AddItem教职员带课查询Combo1.AddItem本学期课程设置Combo1.AddItem打印课程表Combo1.AddItem打印教师

1 / 239
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功