VF程序文件的建立与设计.doc
- 文档编号:232259
- 上传时间:2022-10-07
- 格式:DOC
- 页数:7
- 大小:28.50KB
VF程序文件的建立与设计.doc
《VF程序文件的建立与设计.doc》由会员分享,可在线阅读,更多相关《VF程序文件的建立与设计.doc(7页珍藏版)》请在冰豆网上搜索。
VF程序文件的建立与设计
程序文件的建立与设计:
VisualFoxPro程序文件,是一个以(.PRG)为扩展名的文本文件。
任何可以建立、编辑文本文件的工具,都可以创建和编辑VisualFoxPro程序文件。
这些文本编辑工具,可以是VisualFoxPro系统提供的内部编辑器,也可以是其它常用文本编辑软件。
在文本编辑环境下,不仅可以对程序文件进行输入和修改,还可以实现字符串查找、替换、删除和编辑功能。
建立、编辑程序文件有两种方式:
1.命令方式:
MODIFYCOMMAND〈程序文件名〉
2.菜单方式:
打开“文件”菜单,选择“新建”;在“新建”窗口,选择“程序”,再选择“新建文件”;在“程序文件”编辑窗口,输入程序文件并保存,此时建立程序文件的操作结束。
程序文件的调用:
即运行程序文件,是程序文件建立的最终目的。
在VisualFoxPro系统中,调用程序文件有很多方法,在这里仅介绍其中两种方法。
1.命令方式:
在Command窗口中,输入如下命令,则程序文件被调用。
命令格式:
DO〈程序文件名〉
2.菜单方式
以菜单方式调用程序文件,操作方法如下:
(1)在VisualFoxPro系统主菜单下,打开“程序”菜单,选择“运行”。
(2)在“运行”窗口,输入被调用的程序文件名即可。
程序的基本结构:
VisualFoxPro系统提供的命令丰富,且功能强大,把这些命令和程序设计语句有效地组织在一起,就形成了实现某一特定功能的程序。
VisualFoxPro系统的程序有两个特点:
一是程序控制流模式,由顺序、分支、循环三种基本结构构成。
二是面向对象可视化的结构程序模块,在每个模块的内部也是由程序控制流组成。
常见的控制结构如下:
1.顺序结构(第35套)
顺序结构是在程序执行时,根据程序中语句的书写顺序依次执行的命令序列。
VisualFoxPro系统中的大多数命令都可以作为顺序结构中的语句。
2.分支结构:
分支结构是在程序执行时,根据不同的条件,选择执行不同的程序语句,用来解决有选择、有转移的诸多问题。
3.循环结构
循环结构则能够使某些语句或程序段重复执行若干次。
如果某些语句或程序段需要在一个固定的位置上重复操作,使用循环是最好的选择。
4.过程结构
在许多应用程序中,有一些程序段需要反复执行多次,这些程序段不在一个固定的位置上,而是分散在程序的许多位置上重复执行,可将其与嵌入它的程序分开,形成独立的程序序列,待使用时再调入程序中,以实现不同位置上的重复操作。
这样做增强了程序的可读性和模块化。
我们称这种具有独立功能而且可以被其它程序调用的程序序列为过程。
分支结构-单向分支
分支结构形式有如下三种:
1.单向分支:
即根据用户设置的条件表达式的值,决定某一操作是否执行。
(1)语句格式:
IF〈条件表达式〉
〈命令行序列〉
ENDIF
(2)语句功能:
该语句首先计算〈条件表达式〉的值,当〈条件表达式〉的值为真时,执行〈命令行序列〉;否则,执行ENDIF后面的第一条命令。
2.双向分支:
即根据用户设置的条件表达式的值,选择两个操作中的一个来执行。
(1)语句格式:
IF〈条件表达式〉
〈命令行序列1〉
ELSE
〈命令行序列2〉
ENDIF
(2)语句功能:
该语句首先计算〈条件表达式〉的值,当〈条件表达式〉的值为真时,执行〈命令行序列1〉中的命令;否则,执行〈命令行序列2〉中的命令;执行完〈命令行序列1〉或〈命令行序列2〉后都将执行ENDIF后面的第一条命令。
3.多向分支:
,即根据多个条件表达式的值,选择执行多个操作中的一个对应执行。
(1)语句格式:
DOCASE
CASE〈条件表达式1〉
〈命令行序列1〉
[CASE〈条件表达式2〉
〈命令行序列2〉
……
CASE〈条件表达式N〉
〈命令行序列N〉]
[OTHERWISE
〈命令行序列N+1〉]
ENDCASE
(2)语句功能:
该语句根据给出的N个〈条件表达式〉的值,选择N+1个〈命令行序列〉中的一个执行。
当所有CASE中〈条件表达式〉的值都是假时,如果有OTHERWISE项,则执行〈命令行序列N+1〉,再执行ENDCASE后面的第一条命令;否则,直接执行ENDCASE后面的第一条命令。
使用分支语句应注意的几点:
(1)IF……ENDIF和DOCASE……ENDCASE必须配对使用,DOCASE与第一个CASE〈条件表达式〉之间不应有任何命令。
(2)〈条件表达式〉可以是各种表达式或函数的组合,其值必须是逻辑值。
(3)〈命令行序列〉可以由一个或多个命令组成,可以是条件控制语句组成的嵌套结构。
(4)DOCASE……ENDCASE命令,每次最多只能执行一个〈命令行序列〉。
在多个CASE项的〈条件表达式〉值为真时,只执行第一个〈条件表达式〉值为真的〈命令行序列〉,然后执行ENDCASE的后面的第一条命令。
循环结构-“当”型循环常用的循环语句有以下三种形式:
1.“当”型循环控制语句,即根据条件表达式的值,决定循环体内语句的执行次数。
(1)语句格式:
DOWHILE〈条件表达式〉
〈命令行序列〉
[LOOP/EXIT]
ENDDO
(2)语句功能:
该语句通过〈条件表达式〉的值来控制循环。
执行语句时,反复判断〈条件表达式〉的值,当〈条件表达式〉的值为“真”时,执行〈命令行序列〉;否则,结束循环,并执行ENDDO后面的第一条命令。
循环结构-“计数”型循环
2.“计数”型循环控制语句,即根据用户设置的循环变量的初值、终值和步长,决定循环体内语句的执行次数据。
(1)语句格式:
FOR〈循环变量〉=〈循环变量初值〉TO〈循环 变量 终值〉[STEP〈循环变量步长〉]
〈命令行序列〉
[LOOP/EXIT]
ENDFOR|NEXT
(2)语句功能:
该语句用〈循环变量〉来控制〈命令行序列〉的执行次数。
执行语句时,首先将〈循环变量初值〉赋给〈循环变量〉,然后判断〈循环变量〉是否大于或小于〈循环变量终值〉,若结果为“真”,则结束循环,执行ENDFOR后面的第一条命令;否则,执行〈命令行序列〉,〈循环变量〉自动按〈循环变量步长〉增加或减少,再重新判断〈循环变量〉当前的值是否大于或小于〈循环变量终值〉,直到其结果为真。
循环结构-“指针”型循环
3.“指针”型循环控制语句,即根据用户设置的表中的当前记录指针,决定循环体内语句的执行次数据。
(1)语句格式:
SCAN[〈范围〉][FOR〈条件表达式〉
〈命令行序列〉
[LOOP/EXIT]
ENDSCAN
(2)语句功能:
该语句在指定的范围内,用数据记录指针来控制循环次数。
执行语句时,首先判断函数EOF()的值,若其值为“真”,则结束循环,否则,结合〈条件表达式1〉或〈条件表达式2〉,执行〈命令行序列〉,记录指针移到指定的范围和条件内的下一条记录,重新判断函数EOF()的值,直到函数EOF()的值为真时结束循环。
使用循环语句时应注意的几点
(1)DOWHILE和ENDDO、FOR和ENDFOR、SCAN和ENDSCAN必须配对使用。
(2)〈命令行序列〉可是任何FoxPro命令或语句,也可以是循环语句,即可以为多重循环。
(3)〈循环变量〉应是数值型的内存变量或数组元素。
(4)EXIT和LOOP命令嵌入在循环体内,可以改变循环次数,但是不能单独使用。
EXIT的功能是跳出循环,转去执行ENDDO、ENDFOR、ENDSCAN后面的第一条命令;LOOP的功能是转回到循环的开始处,重新对“条件”进行判断,相当于执行了一次ENDDO、ENDFOR、ENDSCAN命令,它可以改变〈命令行序列〉中部分命令的执行次数。
EXIT、LOOP可以出现在〈命令行序列〉的任意位置。
过程
在VisualFoxPro系统中,程序是独立存放在磁盘上的程序文件,使用时用户通过文件名调用并执行。
为了实现用户的某种目的,很可能需要由多个程序完成。
1.调用过程语句,即执行已有的过程。
(1)语句格式:
DO〈过程名〉
(2)语句功能:
执行以〈过程名〉为名的过程。
2.过程返回语句,即返回过程的调用处。
(1)语句格式:
RETURN[TOMASTER|TO〈过程名〉]
(2)语句功能:
将控制返回到调用程序中调用命令的下一语句。
简单的输入输出命令
1.ACCEPT命令
【格式】:
ACCEPT[<提示信息>]TO<内存变量>
【功能】在程序执行过程中,将用户交互式输入的内容作为字符串赋值给指定内存变量。
该命令只接受字符型数据,输入的字符串不需要加定界符
2.INPUT命令
【格式】:
INPUT[<提示信息>]TO<内存变量>
【功能】在程序执行过程中,将用户交互式输入的内容赋值给指定内存变量
可以输入字符型、数值型、逻辑型、日期型和日期时间型等类型数据,而且可以是常量、变量、函数或表达式等形式,按回车键结束输入,系统将输入的数据赋值给<内存变量>。
3.WAIT命令
【格式】:
WAIT[<提示信息>][TO<内存变量>]
【功能】显示提示信息,暂停程序执行,直到用户按任意键或单击鼠标时继续执行程序。
若选择可选项[TO<内存变量>],将输入的单个字符作为字符型数据赋给指定的<内存变量>;若用户是按Enter键或单击鼠标,<内存变量>的值为空串。
若省略所有可选项,屏幕显示“键入任意键继续……”默认提示信息
三条输入命令的异同:
ACCEPT命令只能接受字符型数据,不需定界符,输入完毕按回车键结束;WAIT命令只能输入单个字符,且不需定界符,输入完毕不需按回车键;INPUT命令可接受数值型、字符型、逻辑型、日期型和日期时间型数据,数据形式可以是常量、变量、函数和表达式,如果是字符串,需用定界符,输入完毕按回车键结束。
4.定位输入命令
【命令】:
@<行,列>SAY<提示信息>|GET<变量>READ
【功能】在屏幕指定的行列位置输入数据。
【说明】命令中的各选项说明如下:
<行,列>是指屏幕窗口的位置。
SAY<提示信息>给出提示信息。
GET<变量>取得变量的值。
GET子句必须使用命令READ激活。
GET<变量>必须先定义再使用。
比如先申请为多个宽度的空格
内存变量的作用域-全局变量
1.全局变量,指在所有程序模块中都有效的内存变量
在程序或过程中定义全局变量的语句为:
【格式】PUBLIC<内存变量表>
例:
PublicX,Y&&X、Y被显示定义为全局变量
Z=0&&Z变量被隐式定义
?
Y,Z&&Y=.F.Z=0,变量的初始值为.F.
【说明】
(1)当定义多个变量时,各变量名之间用逗号隔开;
(2)用PUBLIC语句定义过的内存变量
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VF 程序 文件 建立 设计