VFP
程序设计题
第2题:编制一个表单完成计数器计数显示功能(界面如图例所示,图例文件为*.JPG)。
具体要求如下: 1. 表单的边框为固定对话框,运行时自动居中,不可移动; 2. 表单初始显示状态为全零“00:00:00”; 3. 按“计数”按钮后,自动以秒为单位从零开始计数(设:时的计数属性名为F,分的计数属性 名为H,秒的计数属性名为S)并在表单上动态显示; 4. 按“停止”按钮后暂停计数,按“计数”按钮可以继续计数; 参考答案: 1. 表单的标题属性Caption设置为“计数器”; 2. 表单的BorderStyle属性为“2—固定对话框”,自动居中属性AutoCenter为.T.。 3. 表单的Movable属性为.F.; 4. 时钟控件Timer1的Interval属性为1000。 5. 表单的Form1的Init事件代码: THIS.TIMER1.INTERVAL=1000 THISFORM.TIMER1.ENABLED=.F. STOR 0 TO THIS.S,THIS.F,THIS.H THIS.TEXT1.VALUE='00:00:00' 6. “计数”按钮Command1的Click事件代码: THISFORM.TIMER1.ENABLED=.T. 7. “停止”按钮Command2的Click事件代码: THISFORM.TIMER1.ENABLED=.F. 8. 时钟控件Timer1的Timer事件代码: THISFORM.S=THISFORM.S+1 IF THISFORM.S=60 THISFORM.F=THISFORM.F+1 THISFORM.S=0 ENDIF IF THISFORM.F=60 THISFORM.H=THISFORM.H+1
1
THISFORM.F=0 ENDIF IF THISFORM.H=60 THISFORM.S=THISFORM.S+1 THISFORM.H=0 ENDIF HH=IIF(THISFORM.H>=10,STR(THISFORM.H,2),'0'+STR(THISFORM.H,1)) FF=IIF(THISFORM.F>=10,STR(THISFORM.F,2),'0'+STR(THISFORM.F,1)) SS=IIF(THISFORM.S>=10,STR(THISFORM.S,2),'0'+STR(THISFORM.S,1)) THISFORM.TEXT1.VALUE=HH+':'+FF+':'+SS 第3题:编制一个表单完成表文件“学生.dbf”内容的只读浏览显示功能(界面如图例所示)。
具体要求如下: 1. 表单的边框为固定对话框,运行时自动居中,不可移动; 2. 表单初始显示内容为表文件“学生.dbf”的首记录; 3. 表单内容将以10秒为间隔自动刷新,即自动顺序向后翻记录,当翻至表底时,将自动回到 首记录循环翻动。 参考答案: 1.表单的标题属性Caption设置为“学生表内容只读浏览”; 2.表单的BorderStyle属性为“2—固定对话框”,自动居中属性AutoCenter为.T.; 3.表单的Movable属性为.F.; 4.时钟控件Timer1的Interval属性为10000。 5.表单的Form1的Init事件代码: THIS.SETALL("READONLY",.T.,"TEXTBOX") GO TOP THISFORM.REFRESH 6.时钟控件Timer1的Timer事件代码: SKIP IF EOF() GO TOP ENDIF THISFORM.REFRESH 第4题:编制一个表单完成表文件“学生.dbf”内容的只读浏览显示功能(界面如图例所示)。
具体要求如下: 1. 表单的边框为单线边框,运行时自动居中; 2. 表单初始显示内容为表文件“学生.dbf”的首记录; 3. 当按“前翻” “后翻” “首记录” “末记录” 按钮时,表单将自动显示相应记录的内容;
2
4. 当翻至表头或表底时,将自动设置相应按钮不可访问。 参考答案: 1. 表单的标题属性Caption设置为“学生表内容只读浏览”; 2. 表单的BorderStyle属性为“1—单线边框”;自动居中属性AutoCenter为.T. 3. 表单的Form1的Init事件代码: THIS.SETALL("READONLY",.T.,"TEXTBOX") GO TOP THISFORM.REFRESH 4. “首记录”按钮Command1的Click事件代码: go top thisformmand2.enabled=.t. thisformmand3.enabled=.t. thisformmand4.enabled=.t. thisformmand1.enabled=.f. thisform.refresh 5. “前翻”按钮Command2的Click事件代码: skip -1 if bof() thisformmand1.enabled=.f. this.enabled=.f. endif thisformmand3.enabled=.t. thisformmand4.enabled=.t. thisform.refresh 6.“后翻”按钮Command3的Click事件代码: skip if eof() thisformmand3.enabl