vb大作业报告《信息系统开发工具》课程实验报告.docx
《vb大作业报告《信息系统开发工具》课程实验报告.docx》由会员分享,可在线阅读,更多相关《vb大作业报告《信息系统开发工具》课程实验报告.docx(14页珍藏版)》请在冰豆网上搜索。
![vb大作业报告《信息系统开发工具》课程实验报告.docx](https://file1.bdocx.com/fileroot1/2023-1/7/d3470ae8-8e7f-457b-8bc2-661baf1806d9/d3470ae8-8e7f-457b-8bc2-661baf1806d91.gif)
vb大作业报告《信息系统开发工具》课程实验报告
《信息系统开发工具》课程实验报告
学生成绩管理系统
班级:
学号:
姓名:
成绩
评阅教师签字
评阅日期
2011.6.22
目录
1、系统功能分析与设计--------------------------------3
(1)功能分析----------------------------------------3
(2)系统设计----------------------------------------3
2、主要功能的实现及代码------------------------------3
(1)form1(登陆界面)---------------------------------3
(2)form2(教师查询界面)---------------------------5
(3)form3(学生成绩登录及修改界面-------------------5
(4)form4(成绩表界面)-----------------------------7
(5)form5(学生查询界面)---------------------------8
3、主要输入输出界面----------------------------------9
(一)form1(登陆界)--------------------------------10
(二)form2(教师查询界面)-------------------------10
(三)form3(学生成绩登录及修改界面)----------------11
(四)form4(成绩表界面)----------------------------11
(五)form5(学生查询界面)------------------------11
四、遇到问题及解决方案-------------------------------12
(1)数据库连接-------------------------------------12
(2)控件适用---------------------------------------12
五、vb学习心得---------------------------------------12
一、系统功能分析与设计
(一)功能分析
系统名称:
学生成绩管理系统
功能分析:
学生成绩管理系统,有两种身份可以登录,分别是教师还有学生。
教师可以对学生的成绩进行增加,修改,删除等操作,还可以对学生的整体成绩进行查询。
学生可以通过输入自己的学号,对自己的成绩进行查询,但不能进行增删改操作。
通过登陆界面,教师学生通过输入账号密码,将看到不同的界面。
(二)系统设计
二、主要功能的实现及代码
(一)form1(登陆界面)
Form1(学生成绩管理系统登陆界面)对应的是用户登录功能。
用户通过选择身份,输入账号,密码,进入到自己的界面。
本系统用户身份有教师以及学生。
账号项内只能输入数字,若输入非数字,系统自动提示,账号清空重新输入。
若输入的账号不存在,系统自动提示,并且重新输入。
当输入错误密码,系统提示密码与账号不符。
有三次出入账号以及密码的机会,超过三次,系统自动提示,并且退出登录界面。
在之后的界面中有注销选项,可以准换身份重新登录。
代码:
登录:
PrivateSubCommand1_Click()
StaticiAsInteger
Ifi>=3Then
MsgBox("错误输入三次!
您将不能登陆!
")
End
Else
IfOption1.Value=TrueThen
IfText1.Text="1001"Then
IfText2.Text="12345"Then
MsgBox"登陆成功"
Text1.text=””
Text1.text=””
Form1.Hide
Form2.Show
Else
MsgBox"密码与账号不符,请重新输入!
"
Text2.Text=""
Text2.SetFocus
EndIf
Else
MsgBox"该账号不存在,请重新输入!
"
Text1.Text=""
Text1.SetFocus
EndIf
EndIf
IfOption2.Value=TrueThen
IfText1.Text="2001"Then
IfText2.Text="12345"Then
MsgBox"登陆成功"
Text1.text=””
Text1.text=””
Form1.Hide
Form4.Show
Else
MsgBox"密码与账号不符,请重新输入!
"
Text2.Text=""
Text2.SetFocus
EndIf
Else
MsgBox"该账号不存在,请重新输入!
"
Text1.Text=""
Text1.SetFocus
EndIf
EndIf
i=i+1
EndIf
EndSub
退出:
PrivateSubCommand2_Click()
End
EndSub
限制账号只能输入数字:
PrivateSubText1_KeyPress(KeyAsciiAsInteger)
IfKeyAscii<48OrKeyAscii>57Then
MsgBox"账号内请输入数字"
KeyAscii="0"
Text1.SetFocus
EndIf
EndSub
(二)form2(教师查询界面)
Form2(教师管理界面)以教师身份登录将会看到的界面,教师可以通过datagrid控件看到所有的课程信息。
之后可以通过两个command按钮选择成绩登录及修改和成绩排名查询。
本界面可以通过注销按钮,返回登陆界面。
代码:
进入成绩录入修改界面:
PrivateSubCommand1_Click()
Form2.Hide
Form3.Show
EndSub
进入成绩排名界面:
PrivateSubCommand2_Click()
Form2.Hide
Form4.Show
EndSub
注销返回登陆界面:
PrivateSubCommand3_Click()
Form2.Hide
Form1.Show
EndSub
设置绝对路径:
PrivateSubForm_Load()
DimmpathAsString
mpath=App.Path
IfRight(mpath,1)<>"\"Thenmpath=mpath+"\"
Data1.DatabaseName=mpath+"成绩管理数据库.mdb"
Data1.RecordSource="课程基本信息"
EndSub
(三)form3(学生成绩录入及修改界面)
Form3(学生成绩录入及修改界面),为教师登录界面,教师可以通过form2,选择要进入的课程,然后进入form3对该课程成绩进行操作,该界面只显示选修这门课程学生的学号和成绩。
对数据进行的操作有新增,删除,修改,查询
代码:
设置绝对路径:
PrivateSubForm_Load()
DimmpathAsString
mpath=App.Path
IfRight(mpath,1)<>"\"Thenmpath=mpath+"\"
Data1.DatabaseName=mpath+"成绩管理数据库.mdb"
Data1.RecordSource="成绩"
EndSub
查找:
PrivateSubCommand5_Click()
DimmzyAsString
mzy=InputBox$("请输入课程号","查找窗")
Data1.RecordSource="Select*From成绩Where成绩.cno='"&mzy&"'"
Data1.Refresh
IfData1.Recordset.EOFThen
MsgBox"无此学生",,"提示"
Data1.RecordSource="成绩"
Data1.Refresh
EndIf
EndSub
退出:
PrivateSubCommand6_Click()
Form3.Hide
Form2.Show
EndSub
新增:
PrivateSubCommand1_Click()
OnErrorResumeNext
Command2.Enabled=NotCommand2.Enabled
Command3.Enabled=NotCommand3.Enabled
Command4.Enabled=NotCommand4.Enabled
Command5.Enabled=NotCommand5.Enabled
IfCommand1.Caption="新增"Then
Command1.Caption="确认"
Adodc1.Recordset.AddNew
Text1.SetFocus
Else
Command1.Caption="新增"
Adodc1.Recordset.Update
Adodc1.Recordset.MoveLast
EndIf
EndSub
删除:
PrivateSubCommand2_Click()
OnErrorResumeNext
Adodc1.Recordset.Delete
Adodc1.Recordset.MoveNext
IfAdodc1.Recordset.EOFThen
Adodc1.Recordset.MoveLast
EndIf
EndSub
修改:
PrivateSubCommand3_Click()
OnErrorResumeNext
Command1.Enabled=NotCommand1.Enabled
Command2.Enabled=NotCommand2.Enabled
Command4.Enabled=NotCommand4.Enabled
Command5.Enabled=NotCommand5.Enabled
IfCommand3.Caption="修改"Then
Command3.Caption="确认"
Adodc1.Recordset.Edit
Text1.SetFocus
Else
Command3.Caption="修改"
Adodc1.Recordset.Update
EndIf
EndSub
放弃该操作
PrivateSubCommand4_Click()
OnErrorResumeNext
Command1.Caption="新增"
Command3.Caption="修改"
Command1.Enabled=True
Command2.Enabled=True
Command3.Enabled=True
Command4.Enabled=False
Command5.Enabled=True
Adodc1.UpdateControls
Adodc1.Recordset.MoveNext
EndSub
(四)form4(成绩表界面)
成绩表界面,教师可以通览所有学生的成绩
代码:
PrivateSubCommand1_Click()
Form4.Hide
Form2.Show
EndSub
PrivateSubForm_Load()
DimmpathAsString
mpath=App.Path
IfRight(mpath,1)<>"\"Thenmpath=mpath+"\"
Data1.DatabaseName=mpath+"成绩管理数据库.mdb"
Data1.RecordSource="Select成绩.cno,学生基本信息.sno,学生基本信息.sname,成绩.scoresFrom学生基本信息,成绩Where学生基本信息.sno=成绩.sno"
EndSub
(五)form5(学生查询界面)
学生查询界面,可以按照学号查询想要查询的人的所有成绩,也可以选择要查询的课程,查询选择这门课的人的成绩。
代码:
PrivateSubCommand1_Click()
DimyAsString
y=InputBox$("请输入学号","查找窗")
Data1.RecordSource="Select*From成绩Where成绩.sno='"&y&"'"
Data1.Refresh
IfData1.Recordset.EOFThen
MsgBox"无此学生",,"提示"
Data1.RecordSource="成绩"
Data1.Refresh
EndIf
EndSub
PrivateSubCommand2_Click()
Form5.Hide
Form1.Show
EndSub
PrivateSubCommand3_Click()
DimhAsString
h=InputBox$("请输入课程号","查找窗")
Data1.RecordSource="Select*From成绩Where成绩.cno='"&h&"'"Data1.Refresh
IfData1.Recordset.EOFThen
MsgBox"无此课程",,"提示"
Data1.RecordSource="成绩"
Data1.Refresh
EndIf
EndSub
PrivateSubForm_Load()
DimmpathAsString
mpath=App.Path
IfRight(mpath,1)<>"\"Thenmpath=mpath+"\"
Data1.DatabaseName=mpath+"成绩管理数据库.mdb"
Data1.RecordSource="成绩"
EndSub
三、主要输入输出界面
(一)form1(登陆界)
(二)form2(教师查询界面)
(三)form3(学生成绩登录及修改界面)
(四)form4(成绩表界面)
(五)form5(学生查询界面)
四、遇到问题及解决方案
1、问题:
开始时使用adodc控件连接数据库,在recoredsource中用select语句设置路径,where语句后面的格式不会写,并且与adodc绑定的text里面不显示数据
解决办法:
上网XX,各种说法都试过,后来还是不行就改成用data控件了。
2、问题:
总显示有至少一个变量未定义,程序无法运行
解决办法:
没找到,把出问题的部分删除了,所以一开始构思的很多表单被删去了。
3、问题:
显示正在被占用,程序无法执行。
解决办法:
关掉access文档。
五、vb学习心得
从第一次上课开始,就觉得vb是一个很有意思的课,老师很幽默,vb很给力。
第一次,在上机课的时候,我根据老师讲的,做了一个登陆界面,但没有做完。
于是把东西存在了自己的u盘里面,回到寝室可以在自己的电脑上做。
刚开始做程序的时候,就是完全按照老师的要求,老师的步骤去做的,结果却发现,怎么运行不了?
明明是按照老师的步骤去做的,明明是按照老师的要求去做的,但是就是会遇到一些问题使程序运行不了。
开始也没有管那么多,仍然是按照课本上的去做。
但由于时间问题,做的还是有点粗糙,还是不免存在一定的问题。
后来请教了一下同学,结果发现时代码的编写出现了错误,把代码改过来之后,程序终于可以打开运行了。
在课程设计过程中,虽然我对程序设计不是很熟悉,但是通过老师详细的讲解,我按照步骤去做,遇到问题的时候先自己想办法解决,解决不了的就去问同学,问老师,通过这种学习,收获很大,学会了自己解决棘手问题,知道了团结的力量。
第二次上机课老师让我们完成一个自己感兴趣的小游戏。
因为老师在课堂上说打地鼠是一个比较简单的游戏,所以我决定完成打地鼠的小程序。
一开始一头雾水,不知道从哪下手,于是就在网上寻找可能要用到的图片。
之后开始用控件画出了一个界面,但里面不知道要怎么写代码。
上网XX了一下,发现网上的打地鼠代码多种多样啊,有的好长好长,根本看不懂。
于是我挑了几个能看懂的,大体了解了一下打地鼠的总体思路,开始了自己的打地鼠之路。
我的地鼠从一个一个出来不消失还出现错误,到每隔600ms随机出现并消失是一个质的突破,耗费了一个晚上,增增减减,删删改改,其实也就那么几行代码,竟然让我纠结了那么久。
之后又进行了一些其他功能的设计,于是打地鼠游戏成了我那一段时间非常骄傲的一件事情,哇哈哈哈~居然会做游戏了呢!
之后的上机课上又完成了文本编辑器等程序的设计,就觉得vb是一个很神奇的软件,好像什么鼓捣鼓捣都能弄出来。
最后一次上机课就开始做关于大作业的事情了。
一不小心坐到了一个非常不给力的电脑,什么都慢,还连不上数据库,我当时就觉得,大作业一定是一个更让人暴躁的工作。
事实上也真的让我很暴躁,借了本书,翻翻看看,看不懂。
上网XX,有很多XX知道,看了让我更加不知道了。
无奈我只好重新回到课件,一遍一遍的翻看,发现其实用上课件上面讲解的知识,也可以完成很多功能的设计。
于是我开始了每天捧着电脑往令希奔波的生活,开始不着急,觉得应该不会太难,后来越做越纠结,就因为好多我觉得没有问题的操作,就是运行不出来。
比如吧,我做的第三个界面,用adodc连接数据库的时候,用select语言编辑recordsource,想用select进行多个表的连接查询,就是一直都实现不了,总说我有东西没定义,我反复看代码,也没觉得哪有问题。
还有明明连接上了数据库,就是text不显示数据,往里面添加数据还能添加上去,让我非常费解,只能一遍一遍的尝试,看看能不能改变这种状况。
通过vb的学习,让我知道了很多学习这类课程的道理,首先要保持良好的学习心态,自信,自强,积极主动学习,克服畏难情绪,树立学好程序设计的信心。
要了解概念:
VB程序设计本身并不复杂,变量,函数,条件语句,循环语句等概念较多.要真正能进行程序设计,就要深入理解这些概念.应该重视概念的学习。
还有就是要自己动手编写程序,亲自动手进行程序设计是培养逻辑思维的好方法.因此我们得多动手编写程序,逐渐提高写程序的能力。
自己动手,编写一些程序,才会有成就感,进而对课程产生兴趣,做起来才比较从容.等你在编写大量程序之后。
上机调试程序应注意多问问同学,多问问老师、,把不懂的地方标出来。
养成良好的编程习惯,程序构思要有说明;学会如何调试程序;对运行结果要做正确与否的分析。