成绩系统框图界面.docx

上传人:b****7 文档编号:16009433 上传时间:2023-07-09 格式:DOCX 页数:10 大小:42.21KB
下载 相关 举报
成绩系统框图界面.docx_第1页
第1页 / 共10页
成绩系统框图界面.docx_第2页
第2页 / 共10页
成绩系统框图界面.docx_第3页
第3页 / 共10页
成绩系统框图界面.docx_第4页
第4页 / 共10页
成绩系统框图界面.docx_第5页
第5页 / 共10页
成绩系统框图界面.docx_第6页
第6页 / 共10页
成绩系统框图界面.docx_第7页
第7页 / 共10页
成绩系统框图界面.docx_第8页
第8页 / 共10页
成绩系统框图界面.docx_第9页
第9页 / 共10页
成绩系统框图界面.docx_第10页
第10页 / 共10页
亲,该文档总共10页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

成绩系统框图界面.docx

《成绩系统框图界面.docx》由会员分享,可在线阅读,更多相关《成绩系统框图界面.docx(10页珍藏版)》请在冰点文库上搜索。

成绩系统框图界面.docx

成绩系统框图界面

 

VB课程设计题目:

学生成绩管理系统

设计一个简单的学生成绩程序管理系统,使用随机文件存储学生信息,该程序具有数据添加、修改、删除及学生信息顺序查询功能。

程序的运行界面如下图所示。

 

一、系统结构框图如下:

 

系统总体结构框图

 

二、密码程序界面及主要控件属性设置

1.程序界面:

2.主要控件属性设置:

对象

属性(属性值)

属性(属性值)

说明

窗体1

Name(Form1)

Caption(“登陆成绩管理系统”)

窗体2

Name(Form2)

Caption(“学生成绩管理系统”)

文本框1

Name(Text1)

Text(“”)

PassWordChar(*)

指定显示在文本框中的替代符

命令按钮1

Name(CmdIn)

Caption(“进入”)

标签1

Name(Label1)

Caption(“请输入密码:

”)

AutoSize(True)

返回或设置一个值,以决定控件是否自动改变大小显示其全部内容

命令按钮2

Name(CmdExit)

Caption(“退出”)

 

三、成绩管理程序界面及主要控件属性设置

1.程序界面:

2.主要控件属性设置:

对象

属性(属性值)

属性(属性值)

说明

窗体

Name(form1)

Caption(“学生成绩管理”)

文本框1

Name(TxtID)

Text(“”)

输入和显示学号

文本框2

Name(TxtName)

Text(“”)

输入和显示姓名

文本框3

Name(TxtClass)

Text(“”)

输入和显示班级

文本框4

Name(TxtSubject)

Text(“”)

输入和显示专业

文本框控件数组5

Name(TxtMark)

Index(1—3)

输入和显示三门课程成绩

文本框6

Name(TxtTotal)

Text(“”)

显示总成绩

命令按钮1

Name(CmdAdd)

Caption(“添加”)

向文件中追加记录

命令按钮2

Name(CmdChange)

Caption(“修改”)

修改当前记录

命令按钮3

Name(CmdDelete)

Caption(“删除”)

删除当前记录

命令按钮4

Name(CmdBefore)

Caption(“上一个”)

显示上一个记录

命令按钮5

Name(CmdNext)

Caption(“下一个”)

显示上一个记录

4、系统程序

一、密码程序:

(form1)

PrivateSubForm_Load()者‘装入窗体事件过程

Form2.Hide

EndSub

PrivateSubCmdIn_Click()‘进入密码事件过程

Staticn

n=n+1

Ifn=3Then:

MsgBox"对来起!

密码三次错误退出!

":

End

pass$=Text1.Text'为Text1开始获得焦点设其tabindex=0

Ifpass$="666666"Then

Form1.Hide

Form2.Show

Else

Label1.Caption="请重新输入密码:

"

Text1.Text=""'使文本框清空

Text1.SetFocus

EndIf

EndSub

 

'(密码输入后)按回车键将触发KeyPress事件(替代鼠标单击‘进入’)

PrivateSubText1_KeyPress(KeyAsciiAsInteger)

IfKeyAscii=13Then

CmdIn_Click

EndIf

EndSub

PrivateSubCmdExit_Click()‘退出密码事件过程

End

EndSub

 

二、成绩管理系统程序:

1.标准模块代码:

(Module1)

Typestudent‘定义学生信息记录类型

idAsString*8

nameAsString*10

classAsString*10

subjectAsString*20

mark(1To3)AsInteger

EndType

 

PublicstuAsstudent‘定义student类型变量存放当前记录内容

PublicfilenameAsString‘定义变量存放学生信息文件名

Publicrec_noAsInteger‘定义变量存放当前记录号

Publicrec_totalAsInteger‘定义变量存放总记录数

Publicrec_longAsInteger‘定义变量存放记录长度

—————————————————————————

 

2.成绩管理代码:

(form2)

PrivateSubcmdadd_Click()’添加记录事件过程

DimiAsInteger,nmsgAsInteger

Fori=1Torec_total

Get#1,i,stu

IfTrim(stu.id)=Trim(txtid.Text)Then

nmsg=MsgBox("文件中已有该同学的记录,要显示修改此记录吗?

",vbYesNo)

Ifnmsg=vbYesThen

rec_no=i

Calldisplay

EndIf

ExitSub

EndIf

Nexti

Callgetdata

rec_total=rec_total+1

rec_no=rec_total

Put#1,rec_no,stu

EndSub

 

PrivateSubcmdbefore_Click()‘显示上一条记录事件过程

Ifrec_no>1Then

rec_no=rec_no-1

Else

MsgBox"现在已是首记录!

"

ExitSub

EndIf

Get#1,rec_no,stu

Calldisplay

EndSub

PrivateSubcmdchange_Click()‘修改当前记录事件过程

Callgetdata’将修改的数据保存到记录变量中

Put#1,rec_no,stu’修改记录

Calldisplay

EndSub

PrivateSubcmddelete_Click()‘删除当前记录事件过程

DimiAsInteger

DimdempnoAsInteger

tempno=rec_no

Openfilename&".temp"ForRandomAs#2Len=rec_long

Fori=1Torec_total

Ifi<>tempnoThen

Get#1,i,stu

Put#2,,stu

EndIf

Nexti

Close

Killfilename

Namefilename&".temp"Asfilename

Callfileopen

EndSub

PrivateSubcmdnext_Click()‘显示下一条记录事件过程

DimnmsgAsInteger

Ifrec_no

rec_no=rec_no+1

Calldisplay‘显示当前记录

Else

nmsg=MsgBox("已到最后一记录了!

要回到首记录吗?

",vbYesNo)

Ifnmsg=vbYesThen

rec_no=1‘回到首记录

Calldisplay

EndIf

EndIf

EndSub

PrivateSubtxtclear()‘清除各文本框中的内容子过程

DimiAsInteger

Withstu

txtid="":

txtname=""

txtclass="":

txtsubject=""

Fori=1To3

txtmark(i)=""

Nexti

txttotal=""

EndWith

EndSub

PrivateSubdisplay()‘显示当前记录子过程

DimiAsInteger

Get#1,rec_no,stu

Withstu

txtid=.id:

txtname=.name

txtclass=.class:

txtsubject=.subject

Fori=1To3

txtmark(i)=.mark(i)

Nexti

txttotal=.mark

(1)+.mark

(2)+.mark(3)

EndWith

EndSub

PrivateSubgetdata()‘将在文本框输入的数据存入到记录变量中

DimiAsInteger

stu.id=txtid.Text:

stu.name=txtname.Text

stu.class=txtclass.Text:

stu.subject=txtsubject.Text

Fori=1To3

stu.mark(i)=Val(txtmark(i).Text)

Nexti

EndSub

PrivateSubtxtmark_lostfocus(indexAsInteger)

Ifindex=3Then‘当输入完最后一门课程,则计算并显示总成绩

txttotal=Val(txtmark

(1))+Val(txtmark

(2))+Val(txtmark(3))

EndIf

EndSub

PrivateSubForm_Load()‘装入窗体事件过程

filename=App.Path&"\studet.dat"

‘App.Path意思就是应用程序所在的路径。

即studet.dat文件存放在“运行的程序”同一个位置(目录)中。

rec_long=Len(stu)‘给定随机文件记录长度

Callfileopen

EndSub

PrivateSubfileopen()‘打开学生信息数据文件

DimiAsInteger

OpenfilenameForRandomAs1Len=rec_long

rec_long=Len(stu)

rec_total=LOF

(1)/rec_long‘初始打开的为全部记录

Ifrec_total=0Then‘如为空记录,则清除各文本框的内容

Calltxtclear

ExitSub

Else‘如果有学生信息数据,则显示第一条记录

rec_no=1

calldisplay’也可以直接用display

EndIf

EndSub

 

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

当前位置:首页 > 工程科技 > 能源化工

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2