vfp多表表单程序设计例题

上传人:飞****9 文档编号:127629341 上传时间:2020-04-04 格式:DOC 页数:4 大小:1.81MB
返回 下载 相关 举报
vfp多表表单程序设计例题_第1页
第1页 / 共4页
vfp多表表单程序设计例题_第2页
第2页 / 共4页
vfp多表表单程序设计例题_第3页
第3页 / 共4页
vfp多表表单程序设计例题_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《vfp多表表单程序设计例题》由会员分享,可在线阅读,更多相关《vfp多表表单程序设计例题(4页珍藏版)》请在金锄头文库上搜索。

1、综合表单设计(多表操作)【练习1】创建一个查询指定学生成绩的表单。要求:(1)在text1文本框中输入学生的学号后,如果学生存在,则显示该生的成绩信息,否则显示学生不存在的提示信息;(2)使用数据环境实现成绩.dbf和学生.dbf之间的临时关联。 方法一:FORM1.INITTHIS.SETALL(VALUE, ,TEXTBOX)THIS.TEXT2.READONLY=.T.THIS.COMMAND1.DEFAULT=.T.WITH THIS.GRID1.READONLY=.T.ALLOWADDNEW=.F.DELETEMARK=.F.RECORDSOURCETYPE=1.RECORDSOUR

2、CE=成绩.VISIBLE=.F.ENDWITHTHIS.TEXT1.SETFOCUSSELE 成绩 INDEX ON 学号 TO XHSELE 学生SET RELA TO 学号 INTO 成绩TEXT1.VALIDSELECT 学生SNO=ALLTRIM(THISFORM.TEXT1.VALUE)LOCATE FOR 学号=SNOIF FOUND()THISFORM.GRID1.VISIBLE=.T.THISFORM.TEXT2.VALUE=姓名ELSEMESSAGEBOX(查无此人!,0+48,提示窗)THISFORM.GRID1.VISIBLE=.F.ENDIFTHISFORM.TEXT

3、1.SELECTONENTRY=.T.THISFORM.TEXT1.SETFOCUSTHISFORM.REFRESH方法二:FORM1.INITTHIS.SETALL(VALUE, ,TEXTBOX)THIS.TEXT2.READONLY=.T.THIS.COMMAND1.DEFAULT=.T.WITH THIS.GRID1.READONLY=.T.ALLOWADDNEW=.F.DELETEMARK=.F.RECORDSOURCETYPE=1.RECORDSOURCE=成绩ENDWITHTHIS.TEXT1.SETFOCUSTEXT1.VALIDSELECT 学生SNO=ALLTRIM(THI

4、SFORM.TEXT1.VALUE)LOCATE FOR 学号=SNOIF FOUND()THISFORM.TEXT2.VALUE=姓名SELECT * FROM 成绩 WHERE 学号=学生.学号 INTO CURSOR XSCJTHISFORM.GRID1.RECORDSOURCE=XSCJELSEMESSAGEBOX(查无此人!,0+48,提示窗)ENDIFTHISFORM.TEXT1.SELECTONENTRY=.T.THISFORM.TEXT1.SETFOCUSTHISFORM.REFRESH【练习2】 创建一个查询指定课程的选修情况的表单,组合框combo1的数据源为课程名,表格g

5、rid1的数据源为成绩.dbf,标签2、标签3、标签4 的标题为“”。要求:(1)用代码实现课程.dbf和成绩.dbf之间的临时关联;(2)在组合框中选择课程名,grid1中显示组合框中选中课程的成绩;(3)label2的标题为“选修情况如下:”,“”为组合框中选中的课程名称,label3的标题显示当前选中课程的选修人数,label4的标题显示当前选中课程的平均成绩。比较与习题5.57编写代码的繁简。 FORM1.INITthis.caption=课程选修查询this.setall(caption,label)this.label1.caption=请选择课程名:bo1.rowsourcety

6、pe=bo1.rowsource=课程.课程名with this.grid1.recordsourcetype=1.recordsource=成绩.allowaddnew=.f.deletemark=.f.readonly=.t.endwithsele 成绩index on 课程号 to kchsele 课程set rela to 课程号 into 成绩COMBO1.INTERACTIVECHANGEthisform.label2.caption=THIS.DISPLAYVALUE+选修情况如下:sele 成绩count to xxrs for 课程号=课程.课程号aver 成绩 to pj

7、for 课程号=课程.课程号thisform.label3.caption=THIS.DISPLAYVALUE+的选修人数为:+str(xxrs,2)thisform.label4.caption=THIS.DISPLAYVALUE+平均成绩是:+str(pj,2)SELE 课程thisform.refresh【练习3】创建一个学生成绩查询表单,组合框combo1的数据源为姓名。要求:(1)在form1的init事件中建立三个表之间的临时关联;(2)表单运行时,combo1中选择姓名,将该生的姓名、选修课程名、成绩添加到combo2中;每次选择学生姓名如凌飞扬,先清除combo2中的内容,再显

8、示新的内容,label2的标题为“凌飞扬选修成绩为:”。 FORM1.INITTHIS.COMBO1.ROWSOURCETYPE=2THIS.COMBO1.ROWSOURCE=学生.姓名SELE 成绩INDEX ON 学号 TO XHSELE 学生SET RELA TO 学号 INTO 成绩SELE 课程INDEX ON 课程号 TO KCHSELE 成绩SET RELA TO 课程号 INTO 课程COMBO1.INTERACTIVECHANGETHISFORM.COMBO2.CLEARTHISFORM.LABEL2.CAPTION=THIS.DISPLAYVALUE+的选修成绩为:SELE 成绩SCAN FOR 学生.学号=学号 AND 课程号=课程.课程号THISFORM.COMBO2.ADDITEM(学生.姓名+ +课程.课程名+ +STR(成绩.成绩,3)ENDSCANTHISFORM.REFRESH

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 管理论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号