2001年秋VFP上机卷部分疑难操作答案 |
||||||||||||||||
2001年秋VFP上机卷部分疑难操作答案 ***试卷VFP01 一.项目与数据库操作: 1.(3)出生日期的年份必须在1985年之前: year(csrq)<=1985(用这种形式是包括1985年,因为试题中含有1985年的记录) 或:year(csrq)< 1985 (用这种形式不包括1985年,在确定时,把对话框中的勾去掉,即不用此规则对照表中现有记录) 3. 将性别字段的“男”、“女”分别改为“01”、“02” 在“表”菜单中选择替换字段,然后按如下设置: 或在命令窗口中输入:repl all xb with “01” for xb=”男” repl all xb with “02” for xb=”女” 二.查询: 1.chaxuna: 查询籍贯为非江苏的学生,在筛选中进行如下设置:
三.菜单: 2. “学生信息”菜单项的过程代码是: use xs.dbf browse 四.表单: 2. 基本工资的显示格式:在基本工资文本框的InputMask属性中输入:999,999.99 3. 其实这里指的就是热键:在命令按纽的Caption属性中加上(\ 5. “新增”按钮的代码是: append blank thisform.refresh 6. 工龄文本框的校验代码: if !between(this.value,1,50) wait window "数据输入不合法!" return 0 endif **** 试卷VFP02 一.项目与数据库操作: 1.(5)XS表的删除触发器: 这题的表达式比较复杂,如果想确切表达的话,应该是: year(date())-val(iif(left(xh,1)=”0”,“20”,”19”)+left(xh,2))>5 如果不严格的话,可以简化成: year(date())-val(”19” +left(xh,2))>5 3. 这题与第一套试卷类似: repl all xh with “19”+xh for left(xh,1)=”9” repl all xh with “20”+xh for left(xh,1)=”0” 三.菜单 3. “统计学生人数”的过程代码是: public x use xs.dbf x=str(reccount()) wait window x 4. “退出”菜单的代码是:set sysmenu to defa 四.表单 4.LIST1的DblClick事件代码: Thisform.LIST2.ADDLISTITEM(Thisform.LIST1.VALUE) Thisform.LIST1.REMOVELISTITEM(Thisform.LIST1.LISTITEMID) 5.LIST2的DblClick事件代码: Thisform.LIST1.ADDLISTITEM(Thisform.LIST2.VALUE) Thisform.LIST2.REMOVELISTITEM(Thisform.LIST2.LISTITEMID) 6.“>”按纽中增加的代码: IF Thisform.LIST1.LISTCOUNT=0 This.ENABLED= .f. ENDIF “<”按纽中增加的代码: IF Thisform.LIST2.LISTCOUNT=0 This.ENABLED= .f. ENDIF **** 试卷VFP03 和前两份试卷基本相同。 **** 试卷VFP04 二. 查询 2. 其中的孤立记录用右连接,在筛选中进行如下设置(“条件”中可以用 = 或 in ):
四.表单 5.“确定”按纽的代码(试卷中已给了答案): IF EMPTY(Thisform.Text1.Value) SET FILTER TO ELSE SET FILTER TO XH=ALLT(Thisform.Text1.Value) ENDIF Thisform.Refresh() 6.在表格第一列的Header1的DblClick事件中的代码: set order to xsxh thisform.refresh *** 试卷VFP05 、 试卷VFP06 与前面的基本相同。 *** 试卷VFP07 一. 项目与数据库: 1.(2)在表的验证规则中写:iif(xf>=3,bxk=.t.,bxk=.f.) 注意:点确定按纽时把对话框中的勾去掉。 3. 和前面的类似,但要注意: repl all kcm with alltrim(kcm)+”*” for bxk=.t. 二.查询 1. 输出字段为: left(xs.xm,2) as 姓氏 conut(*) as 人数 分组条件是姓氏, 排序条件两个: 人数 姓氏 在“杂项”中把“全部”前面的勾去掉,在下面的微调框里选择10。 2. 输出字段为: int(cj/10)*10 as 分数段 conut(cj.cj) as 人数 筛选条件是: xs.zydh=”110002” and cj.kcdh=”01” 分组条件是: 分数段 排序条件是: 分数段 四.表单 1.组合框的RowSourseType为字段 3.选中表格,将ScrollBar属性改为2——垂直 4.表格的Init事件代码:this.column5.dynamicforeColor="iif(cj.cj<60,rgb(255,0,0),rgb(0,23,0))" 5.“计算”按纽的代码: sele cj count to a1 for cj>=90 count to a2 for cj<90.and.cj>=80 count to a3 for cj<60 thisform.text1.value=a1 thisform.text2.value=a2 thisform.text3.value=a3 |
||||||||||||||||