Visual FoxPro 课程设计文档格式.docx
《Visual FoxPro 课程设计文档格式.docx》由会员分享,可在线阅读,更多相关《Visual FoxPro 课程设计文档格式.docx(30页珍藏版)》请在冰豆网上搜索。
5.4.1控件属性设置--------------------------------------------11
5.4.2代码设计------------------------------------------------11
5.5学生成绩查询------------------------------------------------13
5.5.1按学号查询表单控件属性设置------------------------------13
5.5.2按学号查询表单代码设计----------------------------------13
5.5.3按课程查询表单控件属性设置------------------------------14
5.5.4按课程查询表单代码设计----------------------------------14
5.5.5按班级号查询表单控件属性设置----------------------------15
5.5.6按班级号查询表单代码设计--------------------------------15
5.5.7按总分查询表单控件属性设置------------------------------16
5.5.8按总分查询表单代码设计----------------------------------16
5.6学生成绩浏览------------------------------------------------17
5.6.1学生成绩概况表单控件属性设置----------------------------17
5.6.2学生成绩概况表单代码设计-------------------------------17
5.6.3080901_成绩浏览表单控件属性设置------------------------18
5.6.4080901_成绩浏览表单代码设计----------------------------18
5.6.5080902_成绩浏览表单控件属性设置------------------------19
5.6.6080902_成绩浏览表单代码设计----------------------------19
5.7打印报表---------------------------------------------------21
5.7.1打印报表表单设计---------------------------------------21
5.7.2打印报表文件设计---------------------------------------21
5.8退出系统
5.8.1退出系统表单控件属性设置-------------------------------22
5.8.2退出系统表单代码设计-----------------------------------22
第六章课程设计总结------------------------------------23
第七章参考文献----------------------------------------23
1.1系统功能简介
录入:
录入学号,学生姓名,课程号,课程名,成绩
修改:
按课程号修改成绩
查询:
按学号查询该同学的各科成绩;
按课程号查询每名同学的成绩,并排序查询结果;
按班级号查询每名同学的各科成绩;
按总分查询每名同学的总成绩,并排序查询结果
打印:
打印成绩
1.2系统功能结构图
学习成绩管理系统
第二章需求分析
业务流程:
运行主程序登录主界面(输入密码)登录主菜单
成绩录入
成绩修改
成绩查询(按学号,课程号,班级号,总分)
成绩浏览(概况,080901班,080902班)
打印报表
退出系统
3.1学生表
表结构:
学生表(学号C8,姓名C8,性别C2,出生日期D,班级号C8)
主索引:
学号;
候选索引:
姓名
3.2课程表
课程表(课程号C4,课程名C14,学分数值型N3,0,任课教师C8)
课程号;
课程名
3.3成绩表
成绩表(学号C8,课程号C4,成绩N5,0,性别C2,班级号C8)
普通索引:
成绩
4.1学生表数据
4.2课程表数据
4.3成绩表数据
5.1系统主界面设置
5.1.1控件属性设置
(1)主表单属性:
Name:
”form1”
Caption:
主界面
Height=454
Width=633
MaxButton=.F.
MinButton=.F.
WindowType=0
WindowState=0
AutoCenter=.T.
Closeable=.F.
(2)命令按钮属性:
Name=”Command1”
Name=”Command2“
Name=“Command3“
Caption=“开始“
Caption=”确定“
Caption=“退出”
Visible=.F.
(3)文本框:
1个,用来接收口令,其主要属性为:
Name=“Text1”PasswordChar=“*”
(4)标签:
共三个,主要属性:
Name=“Lable1”Caption=”学生成绩管理系统”
Name=“Lable2”
Name=“Lable3“
Caption=”DesignedbyYangShuHua“
Caption=“请输入口令:
”
(5)时钟控件:
共两个,用来控制Lable2的颜色变化
Name=“Timer1”
Name=”Timer2”
Interval=1230
Interval=843
5.1.2代码设计
Command1的Click事件
thisform.label3.visible=.T.
thisform.text1.visible=.T.
mand1.visible=.F.
mand2.visible=.T.
Command2的Click事件
passw="
YANGSHUHUA"
IFUPPER(thisform.text1.value)=passw
DOform主菜单
thisform.release
ELSE
MessageBox("
口令不对,您无权使用本系统!
"
0+16+0,"
设置口令"
)
thisform.refresh
ENDIF
Command3的Click事件
clearevents
setsysmenutodefa
thisform.release
Timer1的Timer事件
thisform.label2.forecolor=rgb(255,0,0)
Timer2的Timer事件
thisform.label2.forecolor=rgb(0,0,255)
5.2主菜单设计
5.2.1控件属性设置
标签Lable1的Caption属性:
经济管理学院学生成绩管理系统
5.2.2代码设计
表单的Init事件:
do学生成绩管理.mprWITHTHis,.T.
5.2.3菜单设计
按照系统功能结构图设计菜单
在vfp系统主菜单的“显示”菜单下,选择“常规选项”命令,在弹出的对话框中,勾选顶层表单选项,将该表单设置为顶层表单。
5.3 学生成绩录入
5.3.1控件属性设置
标签:
Label1Caption:
学号;
Label2Caption:
Label3Caption:
成绩:
Label4Caption:
性别;
Label5Caption:
班级号;
Command1Caption:
添加;
Command2Caption:
删除:
Command3Caption:
退出
5.3.2代码设计
select成绩表
gobottom
appendblank
replace成绩表.学号withthisform.text1.value
replace成绩表.性别withthisform.text4.value
replace成绩表.课程号withthisform.text2.value
replace成绩表.班级号withthisform.text5.value
replace成绩表.成绩withthisform.text3.value
thisform.refresh
nA=MESSAGEBOX("
你确定删除该记录吗?
4+64+256,"
提示"
IFnA=6
DELETE
PACK
5.4学生成绩修改
5.4.1控件属性设置
课程号;
成绩;
Label3Caption:
Label4Caption:
成绩修改;
修改;
Command2Caption:
5.4.2代码设计
locatefor学号=thisform.text2.valueand课程号=thisform.text1.value
dowhilefound()
replace成绩withthisform.text3.value
continue
enddo
5.5学生成绩查询
5.5.1按学号查询表单控件属性设置
学号;
查询;
表格:
显示查询结果
5.5.2按学号查询表单代码设计
setsafetyoff
select学生表.学号,学生表.姓名,课程表.课程号,课程表.课程名,成绩表.成绩from学生表,课程表,成绩表;
where成绩表.学号=学生表.学号AND成绩表.课程号=课程表.课程号and成绩表.学号=thisform.text1.value;
intotablecxb
thisform.grid1.recordsource='
cxb'
setsafetyon
5.5.3按课程查询表单控件属性设置
OptionGroup1.option1Caption:
升序;
OptionGroup.option2Caption:
降序;
Command1Caption:
表格控件:
5.5.4按课程号查询表单代码设计
ifthisform.optiongroup1.option1.value=1
where成绩表.学号=学生表.学号AND成绩表.课程号=课程表.课程号and成绩表.课程号=thisform.text1.value;
orderby成绩表.成绩ascintotablecxb1
else
orderby成绩表.成绩descintotablecxb1
endif
cxb1'
5.5.5按班级查询表单控件属性设置
班级号;
查询;
5.5.6按班级查询表单代码设计
where成绩表.学号=学生表.学号AND成绩表.课程号=课程表.课程号and学生表.班级号=thisform.text1.value;
intotablecxb2
cxb2'
5.5.7按总分查询表单控件属性设置
降序Command1Caption:
退出;
5.5.8按总分查询表单代码设计
select成绩表.学号,学生表.姓名,学生表.班级号,SUM(成绩表.成绩)as总分from成绩表,学生表;
where成绩表.学号=学生表.学号groupby成绩表.学号orderby总分asc;
intotablecbx4
where成绩表.学号=学生表.学号groupby成绩表.学号orderby总分desc;
cbx4'
Thisform.release
5.6学生成绩浏览
5.6.1学生成绩概况表单控件属性设置
LabelCaption:
全体学生成绩概况,fontunderline=.T.
5.6.2学生成绩概况代码设计
Form1的Init事件
dosumcj.prg
thisform.text1.value=c1
thisform.text2.value=c2
thisform.text3.value=c3
thisform.text4.value=c4
thisform.text5.value=c5
thisform.text6.value=c6
thisform.text7.value=c7
Sumcj.prg
closedata
publicc1,c2,c3,c4,c5,c6,c7
opendata学生成绩管理系统
use成绩表again
calculateAVG(成绩表.成绩)toc1
calculateavg(成绩表.成绩)for性别="
男"
toc2
女"
toc3
calculateavg(成绩表.成绩)for课程号="
001"
toc4
002"
toc5
003"
toc6
004"
toc7
use
5.6.3080901_成绩浏览表单控件属性设置
Labelcaption:
080901成绩浏览fontunderline=.T.
5.6.4080901_成绩浏览表单代码设计
dosubcj.prg
Subcj.prg
calculateAVG(成绩表.成绩)for班级号="
080901"
toc1
and班级号="
090801"
5.6.5080902_成绩浏览表单控件属性设置
080902_成绩浏览;
fontunderline=.T.
5.6.6080902_成绩浏览表单代码设计
Form1的Click事件
doclacj.prg
Clacj.prg
080902"
calculateavg(成绩表.成绩)for性别=