一 1. 常用命令 1. CREATE TABLE-SQL 创建一个含有指定字段的表。 2. ALTER TABLE-SQL 以编程方式修改表的结构。 3. SELECT 激活指定工作区。 4. USE 打开一个表及其相关索引文件,或打开一个SQL视图。 5. CLOSE TABLES 关闭所有打开数据库中的所有表。 6. COPY STRUCTURE 用当前选择的表结构创建一个新的空自由表。 7. COPY TO 用当前选定表的内容创建新文件。 8. RENAME TABLE 重命名当前数据库中的表。 9. BROWSE 打开浏览窗口。 10. APPEND 在表的末尾添加一个或多个新记录。 11. APPEND FROM 从一个文件中读入记录,添加到当前表的尾部。 12. GO/GOTO 将记录指针移到指定记录上。 13. LOCATE 按顺序搜索表,从而找到满足指定逻辑表达式的第一个记录。 14. SEEK 在一个表中搜索首次出现的一个记录。 15. SKIP 使记录指针在表中向前或向后移动。 16. CONTINUE 继续执行先前的LOCATE命令。 17. EDIT 显示要编辑的字段。 18. DELETE 给要删除的记录做标记。 19. DELETE-SQL 给要删除的记录做标记。 20. PACK 从当前表中永久删除有删除标记的记录。 21. RECALL 恢复所选表中带删除标记的记录。 22. ZAP 从表中删除所有记录。 23. INSERT-SQL 在表尾追加一个包含指定字段值的记录。 24. REPLACE 更新表的记录内容。 25. UPDATE-SQL 以新值更新表中的记录。 26. SET EXCLUSIVE 指定Visual FoxPro在网络上是以独占方式,还是以共享方式打开表文件。 27. SET FILTER 指定访问当前表中记录时必须满足的条件。 28. SET DELETED 指定Visual FoxPro 是否处理标有删除标记的记录。 29. SET INDEX 打开一个或多个索引文件,供当前表使用。 30. SET ORDER 指定表的主控索引文件或标识。 31. GATHER 将当前选定表中的当前记录的数据替换为某个数组、内存变量组或对象中的数据。 32. SCATTER 从当前记录中把数据复制到一组内存变量或数组中。 33. OPEN DATABASE 打开一个数据库。 34. SET DATABASE 指定当前数据库。 35. DELETE DATABASE 从磁盘上删除数据库。 36. DISPLAY DATABASE 显示有关当前数据库的信息。 37. MODIFY DATABASE 打开数据库
器,让用户能够交互地修改当前数据库。 38. VALIDATE DATABASE 保证当前数据库中表和索引位置的正确性。 39. SELECT-SQL 从一个表或多个表中检索数据。 40. DO 执行一个Visual FoxPro 程序或过程。 41. DO FORM 运行用表单设计器创建的、编译过的表单或表单集。 42. REPORT 根据MODIFY REPORT或CREATE REPORE创建的报表定义文件,显示或打印报表。 43. CALCULATE 对表中的字段或包含字段的表达式进行财务和统计操作。 二.常用
1. BOF([工作区号/别名]) 返回指定工作区号/别名当前记录是否在表头(省略工作区号/别名为当前工作区)。 2. CREATEOBJFCT(类名[,参数1,参数2,…]) 从类定义或支持OLE的应用程序创建对象。 3. DBGETPROP(cName,cType,cProperty) 返回当前数据库的属性,或返回当前数据库中字段、命名连接、表或视图的属性。 4. DBSETPROP(cName,cType,cProperty,ePropertyValue) 给当前数据库或当前数据库中的字段、命名连接、表或视图设置一个属性。 5. DBUSED(数据库名称) 当指定的数据库已打开时,返回.T.。 6. DELETED([工作区号/别名]) 返回指定工作区号/别名当前记录是否标有删除标记(省略工作区号/别名为当前工作区)。 7. EOF([工作区号/别名]) 返回指定工作区号/别名当前记录是否在表尾(省略工作区号/别名为当前工作区)。 8. FCOUNT([工作区号/别名]) 返回表中字段数目。 9. FILE(文件名的名称) 如果在磁盘上找到指定的文件,返回.T.。 10. *FEOF(文件句柄号) 判断文件指针的位置是否在文件尾部。 11. GETFILE() 显示“打开”对话框,并返回选定文件的名称。 12. IIF(逻辑表达式,表达式1,表达式2) 根据逻辑表达式的值,返回两个值中的某一个。 13. INKEY([N]) 返回一个编号,该编号对应键盘缓冲区中第一个按键操作。N为秒,是等待时间,如省略为一直等待直到有键按下。。 14. MESSAGEBOX() 显示一个用户自定义对话框(见学习指导)。 15. ORDER([工作区号/别名]) 返回当前表或指定表的主控索引文件或标识。 16. RECCOUNT([工作区号/别名]) 返回当前表或指定表中的记录数目。 17. RECNO([工作区号/别名]) 返回当前表或指定表中的当前记录号。 18. SEEK(关键字) 在一个已索引的表中搜索一个记录的第一次出现位置。 19. TABLEREVERT() 放弃的缓冲行,缓冲表或临时表的修改。 20. TABLEUPDATE() 执行对缓冲行,缓冲表或临时表的修改。 21. TAG([复合索引文件名,]标识数[,工作区号/别名]) 返回打开的CDX多项复合索引文件的标识名。 22. USED([工作区号/别名]) 确定是否在指定工作区中打开了一个表。 23. CREATEOBJECT() 从类定义或支持OLE的应用程序中创建对象。 24. GETOBJECT() 激活OLE自动化对象,并创建此对象的引用。 三.常用属性 1.ActiveColumn 返回一个整数,表明表格控件中包含活动单元的列编号。应用于表格。 2.Activecontrol 引用对象上的活动控件。应用于容器,表单,页面,_SCREEN,工具栏。 3.ActiveForm 引用表单集或_SCREEN对象中活动的表单对象。应用于表单,表单集,_SCREEN。 4.ActivePage 返回页框对象中活动页面的页码。应用于页框。 5.Alignment 指定与控件相关的文本的对齐方式。应用于复选框,列,组合框,编辑框,标头,标签,选择按钮,微调,文本框。 6.AlloeAddNew 指定是否可以从一个表格中将新记录添加到表中。应用于表格。 7.AlwaysOnTop 避免其他窗口覆盖表单窗口。应用于表单,_SCREEN。 8.AutoActivate * 指定如何激活OLE容器控件。应用于OLE绑定型控件,OLE容器控件。 9.AutoCenter 指定表单对象第一次显示于Visual FoxPro主窗口时,是否自动居中放置。应用于表单,_SCREEN。 10.*AutoCloseTables 指定由数据环境指定的表或视图是否在表单集、表单或报表释放时关闭。应用于数据环境。 11.AutoSize 指定控件是否依据其内容自动调节大小。应用于复选框,命令按钮,命令组,标签,OLE绑定型控件,OLE容器控件,选项按钮,选项组。 12.BackColor 指定用于显示对象中文本和图形的背景色或前景色。应用于复选框,列,组合框,命令组,容器对象,控件对象,编辑框,表单,表格,标头,标签,选项按钮,选项组,页面,屏幕,形状,微调,文本框,工具栏。 13.ForeColor 同BackColor。应用于复选框,命令按钮,列,组合框,容器对象,控件对象,编辑框,表单,表格,标头,标签,选项按钮,页面,屏幕,微调,文本框,工具栏。 14.BorderColor 指定对象的边框颜色。应用于组合框,命令组,容器对象,控件对象,图象,线条,列表框,选项组,页框,形状,文本框。 15.BorderStyle 指定对象的边框样式。应用于命令组,编辑框,表单,图象,标签,线条,选项组,_SCREEN,形状,文本框。 16.BorderWidth 指定一个控件的边框宽度。应用于容器对象,控件对象,线条,页框,形状。 17.Bound 确定一个列对象里的控件是否与列的控件源绑定。应用于列。 18.BoundColumn 对一个多列的列表框或组合框,确定哪个列与该控件的VALUE属性绑定。应用于组合框,列表框。 19.*BufferMode 指定保守式更新还是开放式更新记录。应用于表单,表单集,_SCREEN。 20.ButtonCount 指定命令组或选项组中的按钮数。应用于命令组,选项组。 21.Cancel 指定一个命令按钮或OLE容器控件是否为“取消”按钮;即当用户按ESC键时,“取消”按钮的Click事件是否发生。应用于命令按钮,OLE容器控件。 22.Caption 指定在对象标
中显示的文本。应用于ActiveDoc对象,复选框,命令按钮,表单,标头,标签,选项按钮,页面,_SCREEN,工具栏。 23.Closable 指定能否由双击窗口弹出菜单框,或从窗口弹出菜单中选择“关闭”项,或通过单击“关闭”按钮来关闭表单。应用于表单,_SCREEN。 24.*Century 指定在文本框中是否显示一个日期的世纪部分。应用于文本框。 25.ColumnCount 指定表格、组合框或列表框控件中列对象的数目。应用于组合框,表格,列表框。 26.*ColumnLines 显示或隐藏列之间的线条。应用于组合框,列表框。 27.ControlBox 指定运行时在表单或工具栏的左上角是否显示控件菜单框。应用于表单,_SCREEN,工具栏。 28.ControlCount 指定容器对象中控件的数目。应用于列,容器对象,控件对象,表单,页面,_SCREEN,工具栏。 29.ControlSource 指定与对象绑定的数据源。应用于复选框,列,组合框,命令组,编辑框,列表框,OLE绑定型控件,选项按钮,选项组,微调,文本框。 30.CurrentControl 指定列对象中的某一个控件来显示活动单元的值。应用于列。 31.Curvature 指定形状控件的弯角曲率。应用于形状。 32.Default 若活动表单上有两个或更多命令按钮,在按下ENTER时,指定哪个命令按钮或OLE容器控件做出响应。应用于命令按钮,OLE容器控件。 33.*DataFormat 指定在文本框中显示的DATE和DATETIME值的
。应用于文本框。 34.*DataEnvironment 引用对象的数据环境。应用于表单,表单集。 35.DeleteMark 指定在表格控件中是否出现删除标记列。应用于表格。 36.Desktop 指定表单是否放在Visual FoxPro 主窗口中。应用于表单,_SCREEN。 37.DynamicAlignment 指定列对象中文本和控件的对齐方式,运行期间每次刷新表格控件时,都重新计算对齐方式。应用于列。 38.DynamicBackColor 指定列对象的背景和前景色。运行期间每次刷新表格控件时,都重新计算颜色值。应用于列。 39.DynamicForecolor 同DynamicBackColor。 40.DynamicFontSize 指定列对象中显示文本的字体大小。运行期间每次刷新表格控件时,都重新计算字体大小。应用于列。 41.Enabled 指定对象能否响应用户引发的事件。应用于复选框,列,组合框,命令按钮,命令组,容器对象,控件对象,编辑框,表单,表格,图象,标签,线条,列表框,OLE绑定型控件,OLE容器控件,选项按钮,选项组,页面,页框,_SCREEN,形状,微调,文本框,计时器,工具栏。 42.Exclusive 指定当根据一个项目连遍一个应用程序(.app)、动态链接库(.dll)或可执行文件(.exe)时,是否在其中排除一个文件。应用于文件对象。 43.Filter 排除不满足条件的记录,筛选条件由给定表达式指定。应用于临时表。 44.FontName 指定显示文本的字体名。应用于复选框,列,组合框,命令按钮,编辑框,表单,表格,标头,标签,列表框,选项按钮,页面, _SCREEN,微调,文本框。 45.FontSize 指定对象文本的字体大小。应用于复选框,列,组合框,命令按钮,编辑框,表单,表格,标头,标签,列表框,选项按钮,页面, _SCREEN,微调,文本框。 46.Format 指定某个控件的Value属性的输入和输出格式。应用于编辑框,微调,文本框。 47.FormCount 包含表单集中表单对象的数目。应用于表单集,_SCREEN。 48.*GridLines 确定在表格控件中是否显示水平和垂直线。应用于表格。 49.Height 指定对象在屏幕上的高度。应用于复选框,组合框,命令按钮,命令组,容器对象,控件对象,自定义,编辑框,表单,表格,图象,标签,线条,列表框,OLE绑定型控件,OLE容器控件,选项按钮,选项组,页框,_SCREEN,形状,微调,文本框,计时器,工具栏。 50.Icon 指定最小化表单时显示的图标。应用于表单,项目对象,_SCREEN。 51.Increment 单击上箭头或下箭头时,微调控件中数值增加或减少的量。应用于微调。 52.InputMask 指定控件中数据的输入格式和显示方式。应用于微调,文本框。 53.Interval 指定计数器控件的Timer事件之间的时间间隔毫秒数。应用于计时器。 54.KeyboardHighValue 指定可用键盘输入到微调控件文本框中的最大值。应用于微调。 55.KeyboardLowValue 指定可用键盘输入到微调控件文本框中的最小值。应用于微调。 56.Left 对于控件,指定对象的左边界(相对于其父对象)。对于表单对象,确定表单的左边界与Visual FoxPro主窗口左边界之间的距离。应用于复选框,组合框,命令按钮,命令组,容器对象,控件对象,自定义,编辑框,表单,表格,图象,标签,线条,列表框,OLE绑定型控件,OLE容器控件,选项按钮,选项组,页框,_SCREEN,形状,微调,文本框,计时器,工具栏。 57.MaxButton 指定表单是否含有最大化按钮。应用于表单,_SCREEN。 58.MinButton 指定表单是否含有最小化按钮。应用于表单,_SCREEN。 59.Movable 指定用户是否可以在运行时移动一个对象。应用于列,表单,_SCREEN,工具栏。 60.MultiSelect 指定用户是否可以在一个列表框控件中作多项选择,以及如何选择。应用于列表框。 61.Name 指定在代码中引用对象时所用的名称。应用于ActiveDoc对象,复选框,列,组合框,命令按钮,命令组,容器对象,控件对象,临时表,自定义,数据环境,文件对象,编辑框,表单,表单集,表格,标头,图象,标签,线条,列表框,OLE绑定型控件,OLE容器控件,选项按钮,选项组,页面,页框,项目对象,ProjectHook对象,关系,_SCREEN,形状,微调,文本框,计时器,工具栏。 62.Order 为临时表对象指定主控索引标识。应用于临时表。 63.PageCount 指定一个页框控件中的页面数。应用于页框。 64.PasswordChar 决定用户输入的字符或占位符是否显示在文本框控件中,并确定用占位符的字符。应用于文本框。 65.Picture 指定在控件中显示的图形文件。应用于复选框,命令按钮,容器对象,控件,自定义,表单,图象,选项按钮,页面,_SCREEN。 66.ReadOnly 指定用户是否可以编缉一个控件,更新与临时表对象相关联的表或视图,或包含表明项目中某文件是否可以编缉的值。应用于复选框,列,临时表,编缉框,文件对象,表格,微调,文本框。 67.RecordSource 指定与表格控件相绑定的数据源。应用于表格。 68.RecordSourceType 指定如何打开填充表格控制的数据源。应用于表格。 69.Resizable 指定列对象的大小能否在运行时由用户调节。应用于列。 70.RowSource 指定组合框或列表框控件中值的来源。应用于组合框,列表框。 71.*RowSourceType 指定控件中值的来源类型。应用于组合框,列表框。 72.ScrollBars 指定编缉框、表单或表格所具有的滚动条类型。应用于编缉框,表格。 73.Sizable 指定对象的大小是否可以改变。应用于OLE绑定型控件,OLE容器控件,工具栏。 74.Sorted 在组合框和列表框中,指定列表部分的各项是否按字母顺序排序。应用于组合框,列表框。 75.Sparse 指定CurentControl属性是影响列对象中的全部单元,还是仅影响列对象中的活动单元。应用于列。 76.SpeciaEffect 指定控件的不同样式选项。应用于复选框,组合框,命令按钮,命令组,容器对象,控件对象,编辑框,列表框,选项按钮,选项组,页框,形状,微调,文本框。 77.SpinnerHighValue 指定单击上箭头时,微调控件所允许的最大值。应用于微调。 78.SpinnerLowValue 指定单击下箭头时,微调控件所允许的最小值。应用于微调。 79.Style 指定控件的样式。应用于复选框,组合框,命令按钮,选择按钮,文本框。 80.Value 指定控件的当前状态。应用于复选框,组合框,命令组,编辑框,表格,列表框,选项按钮,选项组,微调,文本框。 81.Visible 指定对象是否可见还是隐藏。应用于复选框,列,组合框,命令按钮,命令组,容器对象,控件对象,编辑框,表单,表单集,表格,图象,标签,线条,列表框,OLE绑定型控件,OLE容器控件,选项按钮,选项组,页框,项目对象,_SCREEN,形状,微调,文本框,工具栏。 82.Width 指定对象的宽度。应用于复选框,列,组合框,命令按钮,命令组,容器对象,控件对象,自定义,编辑框,表单,表格,图象,标签,线条,列表框,OLE绑定型控件,OLE容器控件,选项按钮,选项组,页框,_SCREEN,形状,微调,文本框,计时器,工具栏。 83.WordWrap 在调整AutoSize属性为“真”(.T.)的标签控件大小时,指定是否在这种垂直方向或水平方向放大该控件,以容纳Caption属性指定的文本。应用于标签。 四.常用事件 1. Activate 当激活表单、表单集或页对象,或者显示工具栏对象时发生。 2. AfterCloseTables 在表单、表单集或报表的数据环境中,释放指定表或视图后,将发生此事件。 3. BeforeOpenTables 仅发生在与表单集、表单或报表的数据环境相关联的表和视图打开之前。 4. Click 当在程序中包含触发此事件的代码,或者将鼠标指针放在一个控件上,按下并释放鼠标左键,或者更改特定控件的值,或在表单空白区单击时,此事件发生。 5. DblClick 当连续两次快速按下鼠标左按钮并释放时,此事件发生。 6. Destroy 当释放一个对象时发生。 7. Error 当某方法在运行中出错时,此事件发生。 8. GotFocus 当通过用户操作或执行程序代码使对象接收焦点时,此事件发生。 9. Init 在创建对象时,此事件发生。 10. InteractiveChange 在使用键盘或鼠标更改控件的值时,此事件发生。 11. Load 在创建对象前,此事件发生。 12. LostFocus 当某个对象失去焦点时发生。 13. ProgrammaticChange 在代码中更改一个控件值时发生。 14. QueryUnload 在卸载一个表单之前发生此事件。 15. RightClick 当用户在按下并释放鼠标右键时,此事件发生。 16. Timer 当经过Interval属性中指定的毫秒时,此事件发生。 17. Valid 在控件失去焦点之前发生。 5. 常用方法 1. AddObject 运行时,在容器对象中添加对象。 2. AddItem 当组合框或列表框中添加一个新数据项,并且可以指定数据项索引。 3. Clear 清除组合框或列表框控件中的内容(RowsourceType属性必须设置为0)。 4. DoCmd 对于Visual FoxPro 应用程序自动服务程序的一个实例,执行一个Visual FoxPro命令。 5. Hide 通过把Visible属性设置为“假”(.F.),隐藏表单、表单集或工具栏。 6. Refresh 重画表单或控件,并刷新所有值。 7. RemoveItem 从组合框或列表框中移去一项。 8. Release 从内存中释放表单集或表单。 9. Setall 为容器对象中的所有控件或某类控件指定一个属性设置。 10. SetFocus 为一个控件指定焦点。 11. Show 显示一个表单,并且确定是模式表单还是无模式表单。 12. Quit 退出Visual FoxPro的一个实例。 学习内容 学习内容包括VFP程序设计的基本概念、基本操作命令和语法,数据库的建立、管理和维护,面向对象的开发方法(如建立项目、表单、菜单、报表、制作安装盘等)。 1、数据类型 VFP6.0定义了13种数据类型,均可用于数据表中的字段。即为:字符型(Character,缩写C,最大254字节)、货币型(Currency,Y,8字节)、日期型(Date,D,8字节)、日期时间型(DataTime,T,8字节)、逻辑型(Logical,L,1字节)、数值型(Numeric,N,内存中占8字节,数据表中1~20字节)、双精度型(Double,B,8字节)、浮点型(Float,F,内存中占8字节,数据表中1~20字节)、通用型(General,G,4字节)、整型(Integer,I,4字节)、备注型(Memo,M,4字节)、二进制字符型(C,最大254字节)、二进制备注型(M,4字节)。而其中的字符型、货币型、日期型、日期时间型、逻辑型、数值型可被用于内存变量。 2、常量与变量 (1)常量 VFP6.0 可以使用的常量类型有:数值型常量、字符型常量、逻辑型常量、日期型常量、日期时间型常量。其表示方式如下:数值型常量用正负号、小数点和数字表示,也可用带E或e的科学计数法表示;字符型常量需用定界符(可为单引号、双引号或方括号之一)括起来;逻辑型常量用两个英文句点括起的T、Y和F、N(大小写无关)表示;日期型常量和日期时间型常量用{^yyyy-mm-dd}的格式表示。 (2)变量 VFP有三种形式的变量:内存变量、数组变量和字段变量。内存变量是存放单个数据的内存单元,数组变量是存放多个数据的内存单元组,字段变量则是存放在数据表中的数据项。变量名以字母或下划线开始,中文可以汉字开始,后可跟字母、数字或下划线,长度为1~128个字符,注意勿用VFP的保留字。应见名知义的原则,尽量采用VFP建议的前缀或后缀来命名以区分类型。 变量的作用域:可用LOCAL、PRIVATE、PUBLIC命令强制
作用域。LOCAL用于定义局部变量,局部变量只能在创建它们的过程中使用和修改,不能被更高层或更低层的过程访问。PRIVATE用于定义私有变量,用于定义当前过程的变量,并将以前过程定义的同名变量保存起来,在当前过程中的私有变量不影响这些同名变量的原始值。PUBLIC用于定义全局变量,在本次VFP运行期间,所有过程均可使用这些全局变量。 数组在用前一般须说明,说明的命令可用:DECLARE,DIMENSION,PUBLIC,LOCAL。说明之后,每个元素被默认赋值为.F.。不用说明即可使用的情况是用于与记录之间交换数据时,相关命令是:SCATTER,GATHER;COPY TO ARRAY,APPEND FROM ARRAY。另外,可使用如下函数处理数组元素:排序ASORT(),搜索ASCAN(),删除ADEL(),插入AINS(),拷贝ACOPY()。 3、表达式 VFP共有5种类型的表达式:算术表达式,字符表达式,关系表达式,逻辑表达式,日期表达式。它们具有相应的运算符和运算对象的类型。算术运算符有+,-,*,/,^;字符运算符有连接+,-,比较$;关系运算符有>,<,>=,<=,<>或#或!=;逻辑运算符有NOT,AND,OR;日期和时间运算符有+,-。 4、函数 函数据其来源可分为:系统预定义函数和用户自定义函数。系统预定义函数则可据其操作对象分为与数据库有关的函数和一般的数据处理函数。后者又可据函数的参数和返回值的类型进行划分:数值型,字符型,日期型,以及类型转换函数等。 5、命令和语句 VFP提供了大量的命令,几乎大多数命令均可在命令窗口中使用;而在程序文件中使用命令时一般称为语句,所有的命令均可用于程序代码中。对常用的数据操作命令可分类如下: 建立或查看表结构:CREATE,LIST/DISPLAY STRUCTURE,MODIFY STRUCTURE。 打开与关闭表相关命令:USE,CLOSE DATABASE,CLOSE ALL,CLEAR ALL,QUIT。 数据显示与输入更新:记录指针定位GO/GOTO,SKIP,LOCATE,CONTINUE;显示记录BROWSE,LIST/DISPLAY;追加记录APPEND [BLANK];插入记录INSERT;修改记录EDIT,CHANGE,REPLACE;删除与恢复记录DELETE,RECALL,PACK,ZAP。 复制表文件结构与数据:COPY STRUCTURE,CREATE,APPEND FROM,COPY TO。 数据统计:求和SUM,统计COUNT,求平均值AVERAGE,分类汇总TOTAL ON。 排序与索引:SORT TO,INDEX ON,USE…INDEX,SET INDEX TO,SET ORDER TO,REINDEX,CLOSE INDEX。 索引查询:FIND <表达式>/&<内存变量>,SEEK <表达式>。 文件操作:显示目录DIR,删除ERASE,DELETE FILE,复制COPY FILE,换名RENAME,显示内容TYPE,使用DOS命令!或RUN。 多表操作:SELECT <工作区号>/<别名>;多表连接SET RELATION TO ,SET SKIP TO,SET RELATION OFF;多表连接JOIN;表间的关联数据更新UPDATE。 6、程序设计 (1)基本操作 建立程序文件:可通过菜单“文件”/“新建”后选“程序”,按“新文件”按钮(File/New/Program/New file)进入程序文件的编辑窗口,输入程序代码。而通过工具栏上“新建”按钮(或快捷键Ctrl+N)、项目管理器、或任何的文本编辑器也均可建立程序文件。熟练的编程员常在命令窗口输入命令建立程序文件:modify command [<程序文件名>]。 运行程序文件:可通过以下多种方式之一运行程序:菜单“程序”/“运行”(Program/Do);工具栏运行按钮(或快捷键Ctrl+D);项目管理器中选中程序文件后运行;命令do <程序文件名>。 (2)程序中常用命令 程序中常用的命令:交互输入命令ACCEPT,INPUT,WAIT;输出命令?和??;清屏命令CLEAR,取消运行CANCEL;系统状态设置命令SET。另外如,文本块输出命令TEXT <文本信息> ENDTEXT。 VFP兼具结构化程序设计和面向对象程序设计的特点,可以认为结构化程序是VFP程序的基石,而表单编程则较好地体现了面向对象编程的特点。表单编程类似于VB、DELPHI等的编程方式。故以下主要介绍VFP结构化程序设计的有关命令。 (3)结构化程序设计 VFP的三种基本结构是:顺序、选择和循环结构。选择结构的语句有:IF / ENDIF,DO CASE / ENDCASE;循环结构的语句有:DO WHILE / ENDDO,SCAN / ENDSCAN,FOR / ENDFOR。它们均是配对使用的。 子程序:建立用MODIFY COMMAND命令;返回用RETURN语句;调用用DO语句。除作为一个文件的形式保存外,子程序通常另有两种常用的形式:过程和自定义函数。可以把过程和自定义函数组织在一个过程文件中,调用之前用SET PROCEDURE TO <过程文件名>打开即可。过程:说明用PROCEDURE <过程名>;关闭:SET PROCEDURE TO或CLOSE PROCEDURE。自定义函数:以FUNCTION <函数名>开头,以RETURN <表达式>结束。二者的调用均可用<过程或函数名>()或DO <过程或函数名> [WITH <参数表>]两种方式 。