好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

vfp多表表单程序设计例题.doc

4页
  • 卖家[上传人]:夏**
  • 文档编号:392497028
  • 上传时间:2023-08-23
  • 文档格式:DOC
  • 文档大小:1.80MB
  • / 4 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 综合表单设计(多表操作)【练习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 .RECORDSOURCE="成绩" .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=姓名ELSE MESSAGEBOX("查无此人!",0+48,"提示窗") THISFORM.GRID1.VISIBLE=.F.ENDIFTHISFORM.TEXT1.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(THISFORM.TEXT1.VALUE)LOCATE FOR 学号=SNOIF FOUND() THISFORM.TEXT2.VALUE=姓名 SELECT * FROM 成绩 WHERE 学号=学生.学号 INTO CURSOR XSCJ THISFORM.GRID1.RECORDSOURCE="XSCJ"ELSE MESSAGEBOX("查无此人!",0+48,"提示窗")ENDIFTHISFORM.TEXT1.SELECTONENTRY=.T.THISFORM.TEXT1.SETFOCUSTHISFORM.REFRESH【练习2】 创建一个查询指定课程的选修情况的表单,组合框combo1的数据源为课程名,表格grid1的数据源为成绩.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.rowsourcetype=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 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中的内容,再显示新的内容,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。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.