VFP课程设计模板2Word格式文档下载.docx
- 文档编号:21809677
- 上传时间:2023-02-01
- 格式:DOCX
- 页数:20
- 大小:642.80KB
VFP课程设计模板2Word格式文档下载.docx
《VFP课程设计模板2Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《VFP课程设计模板2Word格式文档下载.docx(20页珍藏版)》请在冰豆网上搜索。
(1)欢迎界面
(2)用户登录界面
(3)系统主界面
(4)库存商品查询界面
(5)库存商品添加界面
(6)库存商品修改界面
(7)密码修改界面
2)各模块的主要功能
(1)欢迎界面:
“进入”
(2)用户登录界面:
“确定”,“退出”
(3)系统主界面:
“库存商品查询”,“库存商品添加”,“库存商品修改”,“密码修改”,“退出系统”
(4)库存商品查询界面:
“按货号查询”,“按物品名查询”,“按规格型号查询”,“按生产厂家查询”,“返回主界面”,“退出系统”
(5)库存商品添加界面:
“添加”,“取消”,“返回主界面”,“退出系统”
(6)库存商品修改界面:
“查找”,“第一个”,“前一个”,“下一个”,“最后一个”,“删除该记录”,“返回主界面”,“退出系统”
(7)密码修改界面:
“密码保存”,“返回主界面”
三、详细设计
1)相关数据类型
(1)kcb结构如下
图-3-1
图-3-2
(2)yhb结构如下
图-3-3
图-3-4
2)设计流程图
欢迎
用户登录
主界面
四、调试分析
在程序代码的调试中,不断运行程序发现错误,再改正错误。
五、总结与体会
在本次vfp课程设计中,大部分是运用已学的知识,首先对整个项目进行需
求分析,然后进行总体设计,再然后进行详细设计,在基本完成系统所有必须的功能后,最后进行程
序调试,校正错误。
在本次课程设计中遇到了许多问题,尤其是程序代码部分,然而通过问老师,和同学交流,查资料以及参考老师给的模板,用了一个星期左右的时间基本完成了课程设计。
值得高兴的是在本次设计中更加熟练的掌握了表单设计的过程,并了解了表单在软
件系统设计中的功能。
通过这次课程设计,我学到了很多关于这方面的知识,也得到了很多,不仅充分的将在书本中学到的知识运用到实践中,而且加强了自己的动手能力。
我会总结出这次课程设
计的所有成功与失败的经验与心得。
六、源程序清单
欢迎界面
图-6-1
在“进入”按钮中的“click”事件中添加如下代码:
doform用户登录
用户登录界面
图-6-2
在“确定”按钮中的“click”事件中添加如下代码:
publicyhm1,mm1
yhm1=trim(thisform.text1.value)
mm1=trim(thisform.text2.value)
setexacon
useyhb
locatfor用户名=yhm1and密码=mm1
iffound()
thisform.release
doform主界面.scx
else
messagebox("
身份不对!
"
16+0+0,"
警告!
)
thisform.release
endif
在“退出”按钮中的“click”事件中添加如下代码:
x=messagebox('
确认退出系统吗?
'
1+32+256,'
友情提示'
ifx=1
clearevents
thisform.text1.value="
thisform.text1.setfocus
endif
主界面界面
图-6-3
在“库存商品查询”按钮中的“click”事件中添加如下代码:
doform库存商品查询.scx
在“库存商品添加”按钮中的“click”事件中添加如下代码:
doform库存商品添加.scx
在“库存商品修改”按钮中的“click”事件中添加如下代码:
doform库存商品修改.scx
在“密码修改”按钮中的“click”事件中添加如下代码:
doform密码修改.scx
在“退出系统”按钮中的“click”事件中添加如下代码:
thisform.release
clearevent
quit
库存商品查询界面
图-6-4
在“查询”按钮中的“click”事件中添加如下代码:
docase
**选择按货号查询代码
casethisform.optiongroup1.value=1
selekcb
locateforalltr(kcb.货号)==alltr(thisform.text1.value)
seleall货号as货号,物品名as物品名,规格型号as规格型号,生产厂家as生产厂家,数量as数量,单价as单价;
fromkcborderby3;
wherealltr(kcb.货号)==alltr(thisform.text1.value)intocursortemp
withthisform.grid1
.recordsourcetype=1
.recordsource="
temp"
.columncount=6
.column1.header1.caption="
货号"
.column2.header1.caption="
物品名"
.column3.header1.caption="
规格型号"
.column4.header1.caption="
生产厂家"
.column5.header1.caption="
数量"
.column6.header1.caption="
单价"
endwith
thisform.refresh
thisform.grid1.setfocus
k=messageb("
该货号无记录,请重新输入!
1+32+0,"
友情提示"
ifk=1
**选择按物品名查询代码
casethisform.optiongroup1.value=2
selekcb
locateforalltr(kcb.物品名)==alltr(thisform.text1.value)
fromkcborderby2;
wherealltr(kcb.物品名)==alltr(thisform.text1.value)intocursortemp1
temp1"
该物品名无记录,请重新输入!
**选择按规格型号查询代码
casethisform.optiongroup1.value=3
locateforalltr(kcb.规格型号)==alltr(thisform.text1.value)
fromkcborderby1;
wherealltr(kcb.规格型号)==alltr(thisform.text1.value)intocursortemp2
temp2"
该规格型号无记录,请重新输入!
**选择按生产厂家查询代码
casethisform.optiongroup1.value=4
locateforalltr(kcb.生产厂家)==alltr(thisform.text1.value)
fromkcborderby5;
wherealltr(kcb.生产厂家)==alltr(thisform.text1.value)intocursortemp3
temp3"
该生产厂家无记录,请重新输入!
endcase
在“返回主界面”按钮中的“click”事件中添加如下代码:
doform主界面.scx
库存商品添加界面
图-6-5
在“添加”按钮中的“click”事件中添加如下代码:
ifempty(alltrim(thisform.text1.value))
messagebox("
货号不能为空"
48,"
错误"
thisform.text1.setfocus&
&
如果未填写货号,则出现对话框提醒用户货号不能为空
else
**获取各输入值
货号1=alltrim(thisform.text1.value)
物品名1=alltrim(thisform.text2.value)
规格型号1=alltrim(thisform.text3.value)
生产厂家1=alltrim(thisform.text4.value)
数量1=val(alltrim(thisform.text5.value))
单价1=val(alltrim(thisform.text6.value))
insertintokcbvalue(货号1,物品名1,规格型号1,生产厂家1,数量1,单价1)
添加成功!
信息"
**添加完毕后清空各个文本框
thisform.text1.value='
thisform.text2.value='
thisform.text3.value='
thisform.text4.value='
thisform.text5.value='
thisform.text6.value='
在“取消”按钮中的“click”事件中添加如下代码:
thisform.text1.value='
thisform.text6.value='
库存商品修改界面
图-6-6
在“查找”按钮中的“click”事件中添加如下代码:
publichh
hh=trim(thisform.text7.value)
setordertohh
seekalltrim(thisform.text7.value)
if!
found()
该货号不存在"
gotop
thisform.text7.value='
thisform.refresh
在“第一个”按钮中的“click”事件中添加如下代码:
gototop
this.enabled=.f.
mand2.enabled=.f.
mand3.enabled=.t.
mand4.enabled=.t.
在“前一个”按钮中的“click”事件中添加如下代码:
skip-1
ifbof()
已是第一条记录"
信息窗口"
mand1.enabled=.f.
mand1.enabled=.t.
mand2.enabled=.t.
在“下一个”按钮中的“click”事件中添加如下代码:
skip
ifeof()
已是最后一条记录"
mand3.enabled=.f.
mand4.enabled=.f.
在“最后一个”按钮中的“click”事件中添加如下代码:
gotobottom
在“删除该记录”按钮中的“click”事件中添加如下代码:
nAnswer=messagebox("
确定要删除吗?
36,"
ifnAnswer=6
thisform.dataenvironment.closetables('
kcb'
usekcbexclusive
deletefromkcbwhere货号=alltrim(thisform.text1.value)
pack
use
thisform.dataenvironment.opentables('
密码修改界面
图-6-7
在“密码保存”按钮中的“click”事件中添加如下代码:
yhm=trim(thisform.text1.value)
ymm=trim(thisform.text2.value)
xmm=trim(thisform.text3.value)
cfmm=trim(thisform.text4.value)
seleyhb
locatfor用户名=yhm
ifempty(alltrim(thisform.text1.value)).or.empty(alltrim(thisform.text2.value));
.or.empty(alltrim(thisform.text3.value)).or.empty(alltrim(thisform.text4.value))
用户名或密码不能为空"
thisform.text2.value="
thisform.text3.value="
thisform.text4.value="
iffound()
ifalltr(yhb.密码)<
>
alltr(thisform.text2.value)
messageb("
原密码有误,请重新输入!
thisform.text2.setfocus
return
ifxmm=cfmm
replace密码withxmm
密码修改成功!
提示"
密码输入不一致!
endif
用户名错误!
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VFP 课程设计 模板
![提示](https://static.bdocx.com/images/bang_tan.gif)