下载
加入VIP
  • 专属下载特权
  • 现金文档折扣购买
  • VIP免费专区
  • 千万文档免费下载

上传资料

关闭

关闭

关闭

封号提示

内容

首页 VB面向对象程序设计_学生信息管理系统

VB面向对象程序设计_学生信息管理系统.doc

VB面向对象程序设计_学生信息管理系统

jlgaoyang
2013-08-07 0人阅读 举报 0 0 暂无简介

简介:本文档为《VB面向对象程序设计_学生信息管理系统doc》,可适用于IT/计算机领域

华北科技学院课程设计说明书(VB面向对象程序设计)班级:*****姓名:*****设计题目:学生信息管理系统设计时间:至指导教师:杨月江评语:评阅成绩:评阅教师:《面相对象程序设计(VB)》课程设计报告实验题目:学生信息管理系统、实验目的:当今教育正在普及学校要对每位同学的基本信息情况进行统计整理如何对信息进行保存、查询无疑很重要同时满足信息管理者和查询者的使用。而系统的安全也相当重要防止恶意者的窜改给使用者带来极大不便。在本系统中将实现数据库应用系统最基本的几种功能即对信息的保存、增加、浏览、修改、删除以及查询同时还提供一定的安全功能。、实验设备及环境:PC兼容机、Windows操作系统、VB软件等。、功能模块简介和系统结构图基本情况管理模块学生信息编辑模块是管理员可以对学生基本信息及成绩进行添加、修改、删除等操作而学生则不可以成绩统计情况模块可以以表格和图表的形式显示前三名同学的平均成绩和最低成绩各专业人数统计模块以直方图图表形式显示各专业的总人数。学生成绩查询管理员可以添加、修改、删除学生的专业、学号、姓名并以网格显示对应学号学生的成绩而学生只能浏览信息。查看报表可以查看学生的基本情况包括学号、姓名、系别、专业、出生年月等信息。安全机制密码登录用户登录时要输入用户名、用户身份和密码这三项一一对应才能登录此系统并根据用户身份限制相应操作。密码修改用户登录时有初始密码为保护个人隐私防止他人盗用窜改成功登录系统后可以进行密码修改。登录时间控制锁定如果用户三次登录出现错误系统就会锁定要求用户一分钟后再尝试重新登录(为方便操作此系统锁定时间设置较短可以更改延长)。在锁定未解除时登录系统会提示您还有多长时间才可以登录。这有效防止恶意者频繁尝试登录窜改信息。、系统的主要界面设计及运行说明:登录界面当用户输入的信息有错误时系统会提示你是用户名错误还是密码错误。登录窗体的Borderstyle属性设置为None,画面美观。如图、图所示。EMBEDMSPhotoEd图错误登录提示图图登录锁定图当用户三次登录都错误时系统会提示您“登录错误已达次请分钟后重新登录”若在分钟内登录系统会提示还要多长时间才可以登录。这提高了系统的安全系数防止恶意者频繁尝试登录。系统主界面主界面为MDI窗体通过菜单编辑器建立系统菜单并使用工具栏设置了“密码修改”和“信息浏览”两个命令按钮当鼠标指向命令按钮时有相应文本提示出现。单击各个命令按钮进行相关操作。如果登录者身份为“管理员”则“学籍管理”下的“学生信息编辑”命令可用若登录者身份为“学生”则该命令不可用。在主窗体中还使用了状态栏在第一个窗格中填写文本显示设计者名称在第二个窗格中通过代码显示当前使用者姓名。并在后面的窗格中添加钟表图片显示当前时间还可以显示当前日期。窗体界面美观大方并尽量为使用者提供方便。如图所示。图主窗体运行界面图学生信息编辑界面此模块可以使管理者添加、删除、修改以及查询学生基本信息当单击“新增”命令时该命令按钮的Caption变为“确定”同时“删除”和“修改”命令变灰不能使用。填写完信息后单击“确定”则新信息成功录入若单击“放弃”则跳回当前记录。“修改”命令类似。如图所示。图学生信息编辑模块运行效果图成绩统计界面此界面显示平均成绩在前三名的成绩情况。如图所示。通过select语句实现添加ADO控件分别与两个表建立连接adodc的visibel属性设为false。通过相对路径设置adodc的属性这样在使用时不会出现每次使用不同的电脑因装在不同的硬盘分区而重新连接为使用者提供了便利。具体代码如下:PrivateSubFormLoad()AdodcConnectionString="Provider=MicrosoftJetOLEDBPersistSecurityInfo=FalseDataSource="AppPath"stumdb"AdodcCommandType=adCmdUnknownAdodcRecordSource="Selecttop基本情况姓名,Avg(成绩)As平均成绩,Min(成绩)As最低成绩From基本情况,成绩情况Where基本情况学号=成绩情况学号GroupBy基本情况姓名,成绩情况学号OrderbyAvg(成绩)desc"AdodcRefreshEndSub图成绩统计模块运行效果图专业人数统计界面类似成绩统计界面就不再赘述。学生成绩查询界面运行此界面时单击“查询”命令会弹出对话框让你输入要查询的学号。运行后会在表格中显示学号、课程和成绩。单击“关闭”退出此界面。如图所示。主要代码如下:PrivateSubCommandClick()DimcAsStringc=InputBox$("请输入学号","查找窗")DataRecordSource="select*from成绩情况where学号like'"c"'"DataRefreshIfDataRecordsetEOFThenMsgBox"无此学号!",,"提示"DataRecordSource="成绩情况"DataRefreshEndIfEndSub图学生成绩查询运行效果图密码修改界面此窗体添加了一个隐藏的data控件使“密码”与数据库“用户表”绑定同样使用的是相对路径:PrivateSubFormLoad()DataDatabaseName=AppPath"用户表mdb"DataRecordSource="用户表"EndSub图密码修改当密码不正确或新密码为空或“修改密码”与“确认密码”不同时系统都会有相应提示成功修改密码后也会有提示。此过程主要通过if语句判断实现。如图所示。信息查询界面在此窗口管理员可以进行添加、编辑、删除等操作而学生只能查看。它是将两个数据库中的内容组合在一起显示的。如图所示。图信息查询运行效果图报表显示数据库“基本情况”中的信息可以使使用者对基本信息一览无余直观方便。如图所示。图报表五、程序的主要代码:、登录模块代码:Publicyhm$,mm$DimnumPrivateSubCommandClick()Dimyh$,mm$,ayh=Trim(TextText)OnErrorResumeNextDimmAsStringm="select*from用户表where用户名='"Trim(TextText)"'and用户身份='"Trim(ComboText)"'"MeDataRecordSource=mMeDataRefreshyh=TextTextmm=TextTextIfMeDataRecordsetRecordCount=ThenMsgBox"用户名不存在或用户身份错误请重新输入!",vbExclamation,"提示"num=numElsemm=TextTextIfmm=DataRecordsetFields("密码")Thenyhm=yhmm=TextTextsyslock=Falsenum=登录HideMDIFormShowElseMsgBox"密码错误请重新输入!",,"输入错误"num=numTextText=""TextSetFocusEndIfEndIfIfnum=ThenMsgBox"登录错误已达次请分钟后重新登录",vbInformation,"错误"a=Minute(Time)*Second(Time)Setfso=CreateObject("scriptingfilesystemobject")Settxtfile=fsocreatetextfile(AppPath"timetxt",True)txtfilewrite(a)txtfileCloseEndEndIfEndSubPrivateSubCommandClick()EndEndSubPrivateSubFormLoad()DataDatabaseName=AppPath"用户表mdb"DataRecordSource="用户表"ComboText="学生"OnErrorGoToaOpenAppPath"timetxt"ForInputAs#Input#,aClose#b=Minute(Time)*Second(Time)c=bCSng(a)Ifc<ThenMsgBox"登录错误已经锁定系统"c"秒钟后登录",vbInformation,"提示"EndElseKillAppPath"timetxt"EndIfa:EndSub主窗体代码:PrivateSubcjcxClick()成绩查询ShowEndSubPrivateSubcjtjClick()成绩统计ShowEndSubPrivateSubckbbClick()DataReportShowEndSubPrivateSubMDIFormLoad()StatusBarPanels()Text="系统当前用户:"登录yhmIfTrim(登录ComboText)="管理员"ThenMDIFormxsxxbjEnabled=Truefrm基本情况cmdAddEnabled=Truefrm基本情况cmdCancelEnabled=Truefrm基本情况cmdDeleteEnabled=Truefrm基本情况cmdEditEnabled=Truefrm基本情况cmdUpdateEnabled=Truefrm基本情况cmdRefreshEnabled=TrueElseMDIFormxsxxbjEnabled=Falsefrm基本情况cmdAddEnabled=Falsefrm基本情况cmdCancelEnabled=Falsefrm基本情况cmdDeleteEnabled=Falsefrm基本情况cmdEditEnabled=Falsefrm基本情况cmdUpdateEnabled=Falsefrm基本情况cmdRefreshEnabled=FalseEndIfEndSubPrivateSubrstjClick()人数统计ShowEndSubPrivateSubtcClick()EndEndSubPrivateSubToolbarButtonClick(ByValButtonAsMSComctlLibButton)SelectCaseButtonKeyCase"Tmm"修改密码ShowCase"Tck"frm基本情况ShowEndSelectEndSubPrivateSubxhcxClick()X=MsgBox("请输入要查询的学号",,"查询")EndSubPrivateSubxsxxbjClick()信息管理ShowEndSub成绩查询模块代码:PrivateSubCommandClick()DimcAsStringc=InputBox$("请输入学号","查找窗")DataRecordSource="select*from成绩情况where学号like'"c"'"DataRefreshIfDataRecordsetEOFThenMsgBox"无此学号!",,"提示"DataRecordSource="成绩情况"DataRefreshEndIfEndSubPrivateSubCommandClick()UnloadMeEndSubPrivateSubFormLoad()DataDatabaseName=AppPath"stumdb"EndSub人数统计模块代码:PrivateSubCommandClick()UnloadMeEndSubPrivateSubFormLoad()AdodcConnectionString="Provider=MicrosoftJetOLEDBPersistSecurityInfo=FalseDataSource="AppPath"stumdb"AdodcCommandType=adCmdUnknownAdodcRecordSource="Select专业,count(*)As人数From基本情况GroupBy专业"AdodcRefreshEndSub学生信息编辑模块代码:PrivateSubCommandClick()CommandEnabled=NotCommandEnabledCommandEnabled=NotCommandEnabledCommandEnabled=TrueIfCommandCaption="新增"ThenCommandCaption="确认"mbookmark=DataRecordsetBookmarkDataRecordsetAddNewTextSetFocusElseCommandCaption="新增"DataRecordsetUpdateDataRecordsetMoveLastEndIfEndSubPrivateSubCommandClick()i=MsgBox("确定删除当前信息吗?",vbQuestion,"提示")Ifi=ThenOnErrorResumeNextDataRecordsetDeleteDataRecordsetMoveNextIfDataRecordsetEOFThenDataRecordsetMoveLastEndIfEndSubPrivateSubCommandClick()CommandEnabled=NotCommandEnabledCommandEnabled=NotCommandEnabledCommandEnabled=TrueIfCommandCaption="修改"ThenCommandCaption="确认"mbookmark=DataRecordsetBookmarkDataRecordsetEditTextSetFocusElseCommandCaption="修改"DataRecordsetUpdateEndIfEndSubPrivateSubCommandClick()CommandCaption="新增":CommandCaption="修改"CommandEnabled=True:CommandEnabled=TrueCommandEnabled=True:CommandEnabled=Falsembookmark=DataRecordsetBookmarkDataUpdateControlsDataRecordsetBookmark=mbookmarkEndSubPrivateSubCommandClick()DimmAsStringm=InputBox$("请输入要查找的学生学号","查找窗")DataRecordsetFindFirst"学号='"m"'"IfDataRecordsetNoMatchThenMsgBox"无此学号!",,"提示"EndSubPrivateSubCommandClick()UnloadMeEndSubPrivateSubDataReposition()DataCaption="基本情况:"(DataRecordsetAbsolutePosition)EndSubPrivateSubFormLoad()AdodcConnectionString="Provider=MicrosoftJetOLEDBPersistSecurityInfo=FalseDataSource="AppPath"stumdb"DataDatabaseName=AppPath"stumdb"DataRecordSource="基本情况"AdodcCommandType=adCmdUnknownAdodcRecordSource="select*from成绩情况"AdodcRefresh'AdodcRecordsetFind("学号='"TextText"'")EndSub修改密码模块代码:Dimold$,nw$,rnew$PrivateSubCommandClick()old=TextTextnw=TextTextrnew=TextTextDataRecordsetFindFirst"用户名='"登录yhm"'"Ifold=登录mmThenIfnw=rnewThenIfrnew=""ThenMsgBox"密码不能为空",vbInformation,"系统"ExitSubEndIf登录mm=nwOnErrorResumeNextDataRecordsetFields("密码")=登录mmDataRecordsetUpdateMsgBox"密码已经被修改!"UnloadMeElseMsgBox"两次密码不同!"EndIfElseMsgBox"密码不对!"EndIfEndSubPrivateSubCommandClick()UnloadMeEndSubPrivateSubFormLoad()DataDatabaseName=AppPath"用户表mdb"DataRecordSource="用户表"EndSub、实验总结:通过近两周的时间我完成了学生信息管理系统。此系统能实现学生信息的基本编辑、修改、查询等操作主要运用数据库相关知识。此软件的最大特色就在于登录错误达到三次系统就会锁定时间锁定解除后才能再次尝试登录。由于时间关系学生信息有些简单不够全面离真正运用到实际生活中还有很大差距。编程过程中我遇到了很多难题其中有很多都是细节问题这使我更深的体会到做学问要严谨细致、一丝不苟而真正掌握一门学问是多么的困难啊要学精、学透光靠课本知识是远远不够的。为完成此软件我到图书馆查询了很多书籍为攻破难关我甚至一本书一本书的去查找。最终在自己的努力和老师、同学的帮助下我完成了任务。另外通过修改程序错误我体会到做任何事都要有耐心欲速则不达。而且大家相互学习交流会使你获益匪浅。学生信息管理系统基本情况管理学生成绩查询查看报表安全机制学生信息编辑、浏览成绩统计情况各专业人数统计密码登录密码修改登录时间控制锁定binbin

用户评价(0)

关闭

新课改视野下建构高中语文教学实验成果报告(32KB)

抱歉,积分不足下载失败,请稍后再试!

提示

试读已结束,如需要继续阅读或者下载,敬请购买!

文档小程序码

使用微信“扫一扫”扫码寻找文档

1

打开微信

2

扫描小程序码

3

发布寻找信息

4

等待寻找结果

我知道了
评分:

/13

VB面向对象程序设计_学生信息管理系统

VIP

在线
客服

免费
邮箱

爱问共享资料服务号

扫描关注领取更多福利