VB考试系统文档格式.docx

上传人:b****4 文档编号:16718862 上传时间:2022-11-25 格式:DOCX 页数:28 大小:810.18KB
下载 相关 举报
VB考试系统文档格式.docx_第1页
第1页 / 共28页
VB考试系统文档格式.docx_第2页
第2页 / 共28页
VB考试系统文档格式.docx_第3页
第3页 / 共28页
VB考试系统文档格式.docx_第4页
第4页 / 共28页
VB考试系统文档格式.docx_第5页
第5页 / 共28页
点击查看更多>>
下载资源
资源描述

VB考试系统文档格式.docx

《VB考试系统文档格式.docx》由会员分享,可在线阅读,更多相关《VB考试系统文档格式.docx(28页珍藏版)》请在冰豆网上搜索。

VB考试系统文档格式.docx

二、设备与环境

PC兼容机、Windows操作系统、VB6.0软件等。

三、功能模块简介和系统结构图

本系统主要运用数据库知识,综合VB其他程序,设计出了一套布局合理的考试系统,学生通过系统的使用来检验自己的VB知识结构,教师同时可通过查看学生答题的结果及时了解学生对知识的掌握情况。

教师能够通过系统,对学生的答题信息进行添加,修改。

用户登陆时即可分为教师和学生,这样增加了系统的安全性。

(一)功能模块简介

系统结构图

系统说明

(1)学生登陆系统。

系统运用用户登录的方式,保证了系统信息的安全。

学生进入系统进行VB知识的考察,题目包括选择题,填空题和编程题,题号随机变动,考生可随时对答卷进行保存,点击“交卷”按钮即可知道自己的答题情况和各题所得分数,当同一考生再次进入系统时,其答题顺序与内容依旧保留,保证了内容的连续性。

同时当考生开始答卷时,系统倒计时启动,90分钟后系统自动交卷保存。

(2)教师登录系统。

教师需输入自己用户名方可登陆,保证了系统的安全。

教师进入系统后即可进行对考生考试成绩的查看,了解该学生的知识掌握度。

同时,教师还可以新增或更改考题,以此来保持此系统的持久性。

四、系统的主要界面设计及运行说明

1、登陆窗体

登录时设计了图片的变幻

老师进入需输入自己用户名,进入后选择对考生答卷的查看和试题的修改。

考生登录时进行信息的输入和确认

开始答题,系统开始倒计时

考生得到考试结果

五、主要的源程序代码

1、登陆系统代码(包括图片变幻)

Constbmpfilemax=5

Dimbmpfile(bmpfilemax)AsString

Dimdrawbmpmode(bmpfilemax)AsInteger

Dimbmpnum,movestep,xmax,ymaxAsInteger

DimkxyAsSingle

PrivateSubCommand1_Click()

考试系统终端.Show

UnloadMe

EndSub

PrivateSubCommand2_Click()

End

PrivateSubForm_Load()

bmpnum=0

bmpfile(0)=App.Path+"

\海滩1.jpg"

bmpfile

(1)=App.Path+"

\海滩3.jpg"

bmpfile

(2)=App.Path+"

\海滩4.jpg"

bmpfile(3)=App.Path+"

\海滩5.jpg"

bmpfile(4)=App.Path+"

\海滩6.jpg"

drawbmpmode(0)=1

drawbmpmode

(1)=5

drawbmpmode

(2)=3

drawbmpmode(3)=4

drawbmpmode(4)=2

movestep=0

xmax=ttt2.ScaleWidth/2

ymax=ttt2.ScaleHeight/2

kxy=ymax/xmax

Picture1.Picture=LoadPicture(bmpfile(bmpnum))

Timer1.Interval=30

PrivateSubTimer1_Timer()

hDestDC=ttt2.hDC

hSrcDC=Picture1.hDC

drawflag=drawbmpmode(bmpnum)

SelectCasedrawflag

Case1

endmax=xmax

X1=xmax-movestep

w=movestep*2

Y1=CInt(ymax-movestep*kxy)

h=CInt(2*movestep*kxy)

i=BitBlt(hDestDC,X1,Y1,w,h,hSrcDC,X1,Y1,SRCCOPY)

Case2

h=ttt2.ScaleHeight

i=BitBlt(hDestDC,0,0,w,h,hSrcDC,X1,Y1,SRCCOPY)

Case3

w=movestep

i=BitBlt(hDestDC,0,0,w,h,hSrcDC,0,0,SRCCOPY)

X1=ttt2.ScaleWidth-movestep

i=BitBlt(hDestDC,X1,0,w,h,hSrcDC,X1,0,SRCCOPY)

Case4

endmax=CInt(2*xmax/10)

tempi=CInt(2*xmax/10)

Forij=0To9

i=BitBlt(hDestDC,tempi*ij,0,w,h,hSrcDC,tempi*ij,0,SRCCOPY)

Nextij

Case5

Forih=0Tow-1

Forik=0To9

l=tempi*ik+tempi/2

t=tempi*ij+tempi/2

i=BitBlt(hDestDC,1-(w-ih),t-ih,(w-ih)*2,1,hSrcDC,1-(w-ih),t-ih,SRCCOPY)

i=BitBlt(hDestDC,1-(w-ih),t+ih,(w-ih)*2,1,hSrcDC,1-(w-ih),t+ih,SRCCOPY)

Nextik

Nextih

EndSelect

ttt2.Refresh

movestep=movestep+2

Ifmovestep>

endmaxThen

bmpnum=bmpnum+1

Ifbmpnum>

=bmpfilemaxThen

EndIf

教师登录窗体

Text1.PasswordChar="

*"

DimiAsInteger

IfText1.Text<

>

"

hjl"

Then

i=MsgBox("

密码错误"

5+vbExclamation,"

输入密码"

Ifi=2Then

Else

Text1.Text="

"

:

Text1.SetFocus

学生答题库.Show

进入题库代码

选择题.Show

填空题.Show

PrivateSubCommand3_Click()

i=Shell("

C:

\ProgramFiles\MicrosoftVisualStudio\VB98\VB6.exe"

1)

PrivateSubCommand4_Click()

教师填空题程序更改代码

IfCommand1.Caption="

添加"

Command1.Caption="

确认"

mbookmark=Data1.Recordset.Bookmark

Data1.Recordset.AddNew

Text1.SetFocus

Data1.Recordset.Update

Data1.Recordset.MoveLast

f=MsgBox("

是否确定删除该内容"

vbYesNo)

Iff=vbYesThen

OnErrorResumeNext

Data1.Recordset.Delete

Data1.Recordset.MoveNext

IfData1.Recordset.EOFThenData1.Recordset.MoveLast

IfCommand3.Caption="

修改"

Command3.Caption="

Data1.Recordset.Edit

OnErrorGoToRefreshErr

Data1.Refresh

ExitSub

RefreshErr:

PrivateSubCommand5_Click()

PrivateSubData1_Reposition()

Data1.Caption="

第"

&

Data1.Recordset.Fields(0)&

题"

教师选择题程序更改代码

PrivateSubAdodc1_MoveComplete(ByValadReasonAsADODB.EventReasonEnum,ByValpErrorAsADODB.Error,adStatusAsADODB.EventStatusEnum,ByValpRecordsetAsADODB.Recordset)

Adodc1.Caption="

CStr(Adodc1.Recordset.Fields(0))&

PrivateSubAdodc1_WillChangeRecord(ByValadReasonAsADODB.EventReasonEnum,ByValcRecordsAsLong,adStatusAsADODB.EventStatusEnum,ByValpRecordsetAsADODB.Recordset)

'

验证代码置于此处

下列动作发生时该事件被调用

DimbCancelAsBoolean

SelectCaseadReason

CaseadRsnAddNew

CaseadRsnClose

CaseadRsnDelete

CaseadRsnFirstChange

CaseadRsnMove

CaseadRsnRequery

CaseadRsnResynch

CaseadRsnUndoAddNew

CaseadRsnUndoDelete

CaseadRsnUndoUpdate

CaseadRsnUpdate

IfbCancelThenadStatus=adStatusCancel

PrivateSubForm_Unload(CancelAsInteger)

Screen.MousePointer=vbDefault

PrivateSubAdodc1_Error(ByValErrorNumberAsLong,DescriptionAsString,ByValScodeAsLong,ByValSourceAsString,ByValHelpFileAsString,ByValHelpContextAsLong,fCancelDisplayAsBoolean)

错误处理程序代码置于此处

想要忽略错误,注释掉下一行

想要捕获它们,在此添加代码以处理它们

MsgBox"

Dataerroreventhiterr:

Description

PrivateSubcmdAdd_Click()

OnErrorGoToAddErr

Adodc1.Recordset.AddNew

AddErr:

MsgBoxErr.Description

PrivateSubcmdDelete_Click()

OnErrorGoToDeleteErr

WithAdodc1.Recordset

.Delete

.MoveNext

If.EOFThen.MoveLast

EndWith

DeleteErr:

PrivateSubcmdRefresh_Click()

只有多用户应用程序需要

Adodc1.Refresh

PrivateSubcmdUpdate_Click()

OnErrorGoToUpdateErr

Adodc1.Recordset.UpdateBatchadAffectAll

UpdateErr:

PrivateSubcmdClose_Click()

学生身份确认代码,同时进行考题的备份

Dimrecord_noAsInteger,xmzyAsstuType

Dimstrs1AsString*100

PrivateSubForm_Initialize()

mpath=App.Path

IfRight(mpath,1)<

\"

Thenmpath=mpath&

Openmpath+"

xm.dat"

ForRandomAs#1Len=Len(xmzy)

record_no=LOF

(1)/Len(xmzy)

Ifrecord_no>

0Then

Get#1,record_no,xmzy

Text1(0)=xmzy.strno:

Text1

(1)=xmzy.strname

Close#1

strs1="

你输入准考证号是:

+Text1(0).Text+Chr(13)+Chr(10)+"

考生姓名是:

+Text1

(1).Text+Chr(13)+Chr(10)+"

身份证号是:

+Text1

(2).Text

i=MsgBox(strs1,1+vbQuestion,"

登录提示(欢迎访问栩榛的QQ:

605254012)"

Ifi=1Then

record_no=LOF

(1)/Len(xmzy)+1

xmzy.strno=Text1(0):

xmzy.strname=Text1

(1):

xmzy.mtime=Time()

Put#1,record_no,xmzy

考生须知.Show

formdxt.Option1(i).Value=False

身份确认.Show

Label1.MoveLabel1.Left-50

Label1.ForeColor=QBColor(15*Rnd)

IfLabel1.Left<

-3375Then

Label1.Left=4800

学生考试系统父窗体代码

DimLtime%

PrivateSubMDIForm_Load()

Ltime=5400

formdxt.Show

PrivateSubmenudxt_Click()

formdxt.Show:

formdxt.ZOrder

PrivateSubmenutct_Click()

formtct.Show:

formtct.ZOrder

PrivateSubmenubct_Click()

formbct.Show:

formbct.ZOrder

PrivateSubjiaojuan_Click()

退出否?

52,"

VB考试"

Ifi=6Then

menusave_Click

结果.Show

PrivateSubhelp_Click()

考生须知.Show

EndSub

PrivateSubmenusave_Click()

DimmswriteAsString

FileCopyApp.Path+"

\xm.dat"

"

D:

\xztc"

formdxt.Data1.DatabaseName="

VBDXT.mdb"

formdxt.Data1.RecordSource="

vbdxt"

formdxt.Data1.Refresh

mswrite="

DoWhileNotformdxt.Data1.Recordset.EOF

mswrite=mswrite&

formdxt.Data1.Recordset.Fields("

ID"

)&

"

formdxt.Data1.Recordset.Fields(7)&

formdxt.Data1.Recordset.MoveNext

Loop

Open"

ForAppendAs#1

Print#1,vbCrLf,"

单选"

mswrite

formtct.Data2.DatabaseName="

VBTCT.mdb"

formtct.Data2.RecordSource="

vbtct"

formtct.Data2.Refresh

DoWhileNotformtct.Data2.Recordset.EOF

formtct.Data2.Recordset.Fields("

vbCrLf

题号"

答1"

答2"

mswri

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 交通运输

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1