1、第二章 Visual Foxpro 系统初步本章介绍 Visual Foxpro 6.0 的初步知识,其内容包括: Visual Foxpro 的启动与退出;Visual Foxpro 界面组成及操作;Visual Foxpro 的特点与工作方式;Visual Foxpro 文件类型及特点; Visual Foxpro 命令格式;Visual Foxpro 辅助设计工具及其项目管理器的基本概念。最后将详细介绍 Visual Foxpro 的数据元素,其中包括:常量;变量;表达式和函数等内容。(注:本教材主要对 Visual Foxpro6.0 版本进行介绍,下面及以后章节将 Visual Fo
2、xpro 6.0 简称为 Visual Foxpro。 )2.1 Visual Foxpro 系统特点与工作方式2.1.1 Visual Foxpro 的启动与退出1、Visual Foxpro 的启动在 windows 中启动 Visual Foxpro 的方法与启动其他应用程序相同。常用以下三种启动方式:(1) 单击“开始”按钮指向“程序”单击“Microsoft Visual Foxpro”命令。(2) 双击桌面上的 Visual Foxpro 图标启动 Visual Foxpro。(3) 双击与 Visual Foxpro 关联的文件。即:鼠标双击表文件、项目文件、表单文件等都能启动
3、Visual Foxpro,同时该文件也将被打开。2、Visual Foxpro 的退出在结束使用 Visual Foxpro 后,为保证数据的安全和软件本身的可靠性,需要通过正常的方式退出 Visual Foxpro,通常退出 Visual Foxpro 的方法有以下几种:(1) 打开“文件”菜单单击 “退出”命令。(2) 按组合键 Alt+F4。(3) 在 Visual Foxpro 系统环境窗口,单击标题栏右上角的“退出”按钮。(4) 在命令窗口中输入 QUIT 命令。(5) 同时按下 Alt+F4 组合键。2.1.2 Visual Foxpro 的界面组成当正常启动 Visual Fo
4、xpro 后,就会出现如图 2-1 所示的界面。图 2-1 Visual Foxpro 6.0 主界面Visual Foxpro 6.0 系统的主界面由以下部分组成1 标题栏位于主界面窗口的顶部,它包括控制菜单框,主界面标题,最小化、最大化和关闭按钮。2 菜单栏菜单栏位于标题栏的下方,它包括“文件” 、“编辑” 、 “显示” 、 “格式” 、 “工具” 、 “程序” 、 “窗口”和“帮助”8 个菜单项。当用户单击某一菜单项时就会执行某一操作。另外 Visual Foxpro 的菜单会随着操作的对象的变化跟随变化。3 工具栏工具栏位于菜单栏的下方,每个工具栏由若干个工具按钮组成,每一个按钮都对应
5、一个特定的功能,用户也可以用鼠标将工具栏拖动到 Visual Foxpro 主界面的其他位置。在默认情况下,系统只显示“常用”工具栏,用户也可以点击“显示”菜单下的“工具栏”图 2-2 “工具栏”对话框命令项,通过弹出“工具栏”对话框(如图2-2 所示)来显示或隐藏某些工具栏。4 命令窗口命令窗口是用户与 Visual Foxpro 交互操作的一个重要途径,在此窗口中用户可以编辑、执行 Visual Foxpro 命令,同时用户也可以选择 “窗口”菜单的 “隐藏”命令来隐藏命令窗口,而选择 “窗口”菜单的 “命令窗口”命令可以将隐藏的命令窗口重新显示出来。其中命令窗口外观如图 2-3 所示。
6、图 2-3 命令窗口5 工作区窗口工作区窗口是 Visual Foxpro 主界面的空白区域,不要用于显示数据表、命令或程序的执行结果。6 状态栏状态栏位于 Visual Foxpro 系统界面的最下方,用于显示当前信息或工作的状态。如键盘大小写(Caps)状态、时钟、当前打开的表名、表中的记录的总数和当前记录号等,当鼠标在菜单项上移动时,状态栏还会显示对应菜单项的功能说明。2.1.3 Visual Foxpro 的文件类型和特点Visual Foxpro 中各种数据都以文件的形式存放到磁盘中,文件的扩展名用于区别不同类型的文件。Visual Foxpro 常用文件类型如下.1. 项目文件(.
7、PJX)项目文件主要用于集中管理应用程序中各种类型的文件。用户用它可以生成在VFP 环境中使用应用程序.APP 和脱离 VFP 环境的可执行文件.EXE。系统还会自动生成其扩展名为.PJT 的备注文件,该文件用于存放项目的相关信息。2. 表文件(.DBF)表文件按主要用于存放二维表,若在创建表结构时,用户设置了备注型或通用型字段,系统将自动生成一个扩展名为.FPT 的备注文件来存放备注字段值。一旦有了备注文件,用户在拷贝或删除表文件时需注意,这两个文件必须处于同一个文件夹下,否则表文件是不能打开的。为防止表文件被破坏,Visual Foxpro 会自动生成一个扩展名为.BAK 的备份文件。3.
8、 数据库文件(.DBC)数据库文件时相关表文件的集合,应用系统设计多个表时,Visual Foxpro 使用数据库来集中对这些表进行管理,数据库的备注文件时.DCT。如果一个表属于某个数据库,打开该表时一定要先打开它所属的数据库。4. 程序文件(.PRG)程序文件时把 Visual Foxpro 命令有机集合在一起而形成的文件,该文件就是为解决某一特定问题而编写的程序。.PGR 是源程序格式,用户可直接在命令窗口中用“DO ”来执行。源程序在执行时,系统会生成它的编译文件.FXP 让计算机执行。5. 表单文件(.SCX)表单文件是 VFP 用来设计数据输入和输出的屏幕界面文件。Visual F
9、oxpro 的表单(Form )也叫做窗体,它是人机对话的窗口。表单的备份文件为.DCT 。6. 单索引文件.IDX 和复合索引文件.CDX索引文件是指在表的基础上建立的一种具有排序和快速查询特点的文件,索引文件分为单索引文件.IDX 和复合索引文件.CDX ,其中单索引文件只包含一个索引项(排序字段) 。复合索引文件可以包含多个索引项。7. 菜单文件(.MNX 和.MPR)菜单文件是指用户为应用程序创建的菜单,其扩展名为.MNX,通过菜单格式文件生成的菜单程序文件扩展名为.MPR,用户可通过调用.MPR 文件来调用生成的菜单。8. .内存变量文件(.MEM)内存变量文件用于保存用户定义的内存
10、变量。当用户退出 Visual Foxpro 后,所定义的内存变量将会从内存中释放。为了以后能再次使用这些内存变量,可将这些内存变量存放到内存变量文件中。9. 报表文件(.FRX)报表格式文件专用于数据报表格式的打印和输出。它的备份文件是.FRT10. 标签文件(.LAB)标签文件主要用于用户打印标签及名片的文件11. 视图文件(.VUE)视图文件是指为保护表中原始数据又方便查询的一种“虚表” 。视图文件的建立必须源于数据表文件,视图文件并不存放数据而是查询命令。12. 查询文件(.QPR)查询文件是指从视图或表中提取满足条件的记录,然后定向输出查询结果。查询以扩展名为.QPR 的文件保存字磁
11、盘上。13. 可视类库文件(.VCX)类库文件是类的集合。类是 Visual Foxpro 中具有相同属性的操作对象。类可以由系统提供,也可以由用户创建。2.1.3 Visual Foxpro 的工作方式Visual Foxpro 提供了大量的命令来对数据库进行操作,在早期的 FoxBASE 数据库管理系统中提供了交互式和程序方式来执行 Visual Foxpro 命令,然而 Visual Foxpro 6.0除了可以继续使用这两种方式外,还增加了菜单操作方式。1. 交互方式交互方式是指在 Visual Foxpro 命令窗口中输入一条命令后回车,立即在屏幕窗口显示该命令的执行结果。交互式也称
12、为人机对话方式。初学者用这种方式学习 Visual Foxpro 命令和函数是非常方便的。2. 程序方式程序工作方式是指 Visual Foxpro 的用户根据实际应用需要,将命令编写成一个程序,通过运行程序,让系统自动执行其中的命令,得到最后结果。3.菜单操作方式菜单操作方式是 Visual Foxpro 的一种重要的工作方式。Visual Foxpro 的大部分功能都可以通过菜单操作实现。菜单操作直观易懂,操作方便。2.1.4 Visual Foxpro 的命令格式命令式程序设计的基础,Visual Foxpro 提供了丰富的命令,但每个命令都有严格是语法规则,用户必须按照命令所要求的格式
13、运行命令,才能实现其命令功能,否则系统将会提示错误信息。1 命令结构Visual Foxpro 的命令通常由两部分组成:第一部分是命令动词,也称为关键字,用于指定命令的操作功能;第二部分是命令子句,用于说明命令的操作对象、操作条件等信息。Visual Foxpro 的命令结构如下:如:List for 性别 =男其中:List 是命令动词,表示命令的功能。For 是命令子句,用于说明操作的对象。通常一条 Visual Foxpro 的命令动词后面可以由一个或多个命令子句组成,使得在一条命令中可以实现多个功能。为方便后面讲述,以下是本书的一些符号约定。表示必选项,若缺省该命令运行时将出错。 表示
14、可选项,方括号内的参数由用户根据具体要求输入。| 表示 “二选一 ”,用户可根据具体需求选择竖杠两边的任意选项。2 命令子句Visual Foxpro 中包含如下命令子句:(1) 范围子句“范围”子句用于指定要操作记录的范围,共有四种选择: RECORD n 表示第 n 条记录。 NEXT n 表示当前记录开始的共 n 条连续的记录。 REST 表示当前记录开始到表文件尾的所有记录。 ALL 表示所有记录。(2) 字段筛选子句(FIELDS)“”子句用于确定命令操作表中的行, “FIELDS”则可以确定要显示的字段(即表中的列) 。若有多个字段,各字段之间用“, ”号分隔。若省略“FIELDS
15、”子句,则表示对所有字段进行操作。(3) 条件子句(FOR|WHERE)条件子句可以根据条件确定操作的记录,其中 FOR 选项表示在跟定范围内查找满足条件的记录,WHILE选项表示从当前记录开始查找,找到满足条件的记录后一旦遇到不满足条件的记录就停止查找。在 Visual Foxpro 中较多的使用 FOR子句。3 命令书写规则在 Visual Foxpro 中使用命令还应注意遵循一定的书写规则:1) 每个命令都必须以命令动词开始。2) 命令动词与子句之间、子句与子句之间必须使用空格隔开,命令中个子句的顺序可以是任意的。3) 一行只能书写一条命令,如果命令行较长,可以分多行书写,但除最后一行外
16、的每一行都必须以续行符“;”结束。4) 命令中的关键字和子句可以只使用前 4 个字符,并且不区分大小写。如:DISPLAY 可以只写成 DISP 或 Disp 等。5) 命令中的所有标点符号都必须使用西文标点,而非中文中文标点。6) 一条命令正确输入完毕后按回车键即可执行。2.2 Visual Foxpro 的辅助设计工具用户可利用 Visual Foxpro 数据库管理系统创建 10 多种类型的用户文件来满足开发一个实际的应用系统的需要。Visual Foxpro 提供了一些辅助设计工具,使用户使用些辅助工具的直观、简便、快速的完成各种用户文件的创建。同时正是由于这些辅助工具的存在,才使得
17、Visual Foxpro 体现出强大的功能。Visual Foxpro 辅助设计工具包括向导、设计器、生成器和项目管理器等,下面分别对它们进行介绍。2.2.1 Visual Foxpro 向导向导(Wizard)是一种快速生成各种用户文件的工具,设计者只需要按照向导的提示引导步骤,就可以一步一步的设计出相应的用户文件。Visual Foxpro 提供了多种向导,如表向导、数据库向导、表单向导等。启动向导的常用方法为:(1)使用“文件”菜单单击“文件”菜单单击“新建”命令打开“新建”对话框在“新建”对话框中选择文件类型单击“向导”按钮。单击“文件”菜单中的“新建”命令后,就出现略溶图 2-4
18、所示的“新建”对话框。在该对话框中,先要选择文件类型,再单击“向导”命令按钮,即可进入该类文件的向导设计对话框。图 2-4 “新建”对话框 图 2-5 用“工具” 菜单进入文件的向导(2)使用“工具”菜单单击“工具”菜单单击“向导”命令选择文件类型,可快速地进入向导设计,在打开“工具”菜单单击“向导”命令后就可以看见用向导工具能创建的各类文件。如图 2-5 所示。2.2.2 Visual Foxpro 设计器Visual Foxpro 系统的设计器为用户提供一个友好的图形用户界面。用户可以通过它创建并定制数据表结构、数据库结构、报表格式和应用程序组件等。常用的设计器有:表设计器、查询设计器、视
19、图设计器、报表设计器、数据库设计器、菜单设计器等。打开“设计器” ,有以下几种方法:1)单击“文件”菜单单击“新建”命令打开“新建”对话框在“新建”对话框中选择文件类型,然后单击“新建文件”按钮,输入文件所要保存的位置和文件名,将打开相应的设计器,如选择表类型文件,将打开表设计器,如图 2-5 所示。图 2-5 表设计器2)从项目管理器中打开,如在“项目管理器”中选择数据库文件类型,单击“新建”按钮,出现如图 2-19 所示的对话框。单击 “新建数据库” 按钮,即可打开数据库设计器。2.2.3 Visual Foxpro 生成器2.2.4 Visual Foxpro 项目管理器在使用 VFP
20、管理数据库或开发一个数据库应用系统时,即使一个规模不大的应用系统,也会有几十个多种类型的文件,如通常的 PRG 命令文件、DBF 表文件、CDX 索引文件以及菜单、表单、报表、位图等文件。如果没有一个有效的管理工具,将会对开发工作以及以后的系统维护带来很大困难。项目管理器是 VFP 中管理各种数据和对象的主要组织工具,一个项目是文件、数据、文档和对象的集合,项目文件以扩展名 PJX 保存。项目管理器用来管理数据库设计和程序设计的成果,它是 Visual Foxpro 的“控制中心” 。用户可以利用项目管理器简便地、可视化地创建、修改或者编译(连编)成脱离 VFP 环境的运行的可执行文件。1.
21、创建方法通常使用两种方法创建项目文件,一是使用 VFP 的菜单命令,另一种是在命令窗口中输入命令,具体操作如下: 系统菜单:单击“文件”菜单单击“新建”命令选择文件类型“项目”单击“新建文件”按钮文件取名单击“保存”按钮。 命令窗口:CREATE PROJECT 。通过以上两种方法都可以创建一个新项目文件,在 VFP 系统的窗口中出现一个项目管理器来表示项目文件,同时菜单栏还会出现“项目”菜单,提供对项目文件操作的相关命令。项目管理器的界面如图 2-6 所示:图 2-6 项目管理器2 项目管理器的选项卡VFP 项目管理器一共有 6 个选项卡,选择不同的选项卡,则在下面的工作区显示所管理的相应文
22、件类型。先对各选项卡说明如下: “全部”选项卡:可显示和管理应用项目中使用的所有类型的文件, “全部”选项卡包含了它右边的 5 个选项卡的全部内容。 “数据”选项卡 :项目管理器”为数据提供了一个组织良好的分层结构视图。若要处理项目中某一特定类型的文件或对象,可选择相应的选项卡。在建立表和数据库,以及创建表单、查询、视图和报表时,所要处理的主要是“数据”和“文档”选项卡中的内容。 “项目管理器”中的“数据”选项卡包含了一个项目中的所有数据:数据库、自由表、查询和视图。 “文档”选项卡 :“文档”选项卡中包含了处理数据时所用的全部文档:输入和查看数据所用的表单,以及打印表和查询结果所用的报表及标
23、签。 “类”选项卡:该选项卡显示和管理应用程序中使用的类库文件。 “代码”选项卡:管理项目中使用的各种程序代码文件。如:程序文件(.PRG ) 、API 库和用项目管理器生成的应用程序(.API) 。 “其他”选项卡:显示和管理应用程序中使用的、但在以上选项卡中没有管理的文件,如菜单文件、文本文件等。3 项目管理器的基本操作(1) 查看文件详细内容项目管理器中的项是以类似于大纲的结构来组织的,可以将其展开或折叠,以便查看不同层次中的详细内容。如果项目中具有一个以上同一类型的项,其类型符号旁边会出现一个 + 号。单击 + 号可以显示项目中该类型所有项的名称。例如,单击“自由表”符号旁边的 + 号
24、,可以看到项目中自由表的名称。大纲显示了项目中不同层次内的详细内容。若要折叠已展开的列表,可单击列表旁边的 - 号。(2) 在项目中加入文件选择要添加项的类型,选择“添加” ,在“打开”对话框中,选择要添加的文件名,然后选择“确定” 。 (3) 从项目中移去文件选定要移去的内容,选择“移去” ,在提示框中选择“移去” 。 如果要从计算机中删除文件,请选择“删除” 。 (4) 创建添加到“项目管理器”中的文件选取要创建的文件,再选择“新建” 。 对于某些项,用户可以利用向导来创建文件。 (5) 修改文件选定一个已有的文件,并选择“修改” 。 例如,要修改一个表,先选定表的名称,然后选择“修改”按
25、钮,该表便显示在“表设计器”中。 (6) 为文件添加说明创建或添加新的文件时,可以为文件加上说明。文件被选定时,说明将显示在“项目管理器”的底部。若要为文件添加说明,可在“项目管理器”中选定文件,再从“项目”菜单中选择“编辑说明” ,然后在“说明”对话框中键入对文件的说明,最后选择“确定” 。 (7) 查看表中的数据从“项目管理器”中可以浏览项目中表的内容。若要浏览表可以选择“数据”选项卡,然后选定一个表并选择“浏览” 。 (8) 在项目间共享文件通过与其他项目共享文件,可以重用在其它项目开发中的工作成果。此文件并未复制,项目只储存了对该文件的引用。文件可同时和不同的项目相连接。 4 定制“项
26、目管理器”在项目管理器中可以定制可视工作区域,方法是改变“项目管理器”的外观或设置 “项目管理器”中的文件。1、移动“项目管理器” 可以将鼠标指针指向标题栏,然后将“项目管理器”拖到屏幕上的其他位置。2、改变“项目管理器”窗口的大小 将鼠标指针指向“项目管理器”窗口的顶端、底端、两边或角上,拖动鼠标即可扩大或缩小它的尺寸。 3、折叠“项目管理器” 单击右上角的向上箭头,即可看见如图 2-7 所示的情形。图 2-7 折叠项目管理器4、拆分选项卡在“项目管理器”处于折叠状态时。选定一个选项卡,将它拖离“项目管理器” ,使选项卡与项目管理器分离,如图 2-8 所示。图 2-8 拆分后的“项目管理器”
27、若要将拆分的选项卡还原,可以单击选项卡上的“关闭”按钮,货用鼠标将选项卡拖动到“项目管理器”中原来的位置即可5、停放“项目管理器”将“项目管理器”拖到 Visual Foxpro 主窗口的顶部。停放就是将工具栏固定在 Visual Foxpro 窗口的上部、下部或边缘。 “项目管理器”也可以停放在 Visual Foxpro 窗口的上部。 “项目管理器”停放后,它就变成窗口工具栏区域的一部分。 “项目管理器”处于停放状态时,不能将其展开,但是可以单击每个选项卡来进行相应的操作。对于停放的“项目管理器” ,用户同样可以从中拖开选项卡,如图 2-9 所示。图 2-8 在工具栏上显示“项目管理器”2
28、.3 Visual Foxpro 的数据元素2.3.1 数据类型与其它程序设计语言一样,VFP 提供了多种数据类型。数据类型是简单数据的基本属性,是一个重要的概念。因为只有相同类型的数据之间才能直接运算,否则就会发生数据类型不匹配的错误。1、字符型数据(Character 简写为 C) 字符型数据由字母(汉字) 、数字、空格等任意 ASCII 码字符组成。字符数据的长度为 0254,每个字符占一个字节。字符型数据在使用时必须用定界符( , “”或 )括起来。注:当某一种定界符本身是字符型常量的组成部分时,则必须选用另一种定界符,例如“Im a student.” 。2、数值型数据(Numeri
29、c 简写为:N)数值型数据用于算术运算,它由数字 09、小数点和正负号组成。数值型数据的长度为 120,每个数据占 8 个字节。3、浮点型数据(Float 简写为:F)浮点型数据属于数值型数据的一种,主要用于科学计数法表示数,它有尾数、阶数和字母 E 组成。最大长度 20 位,占 8 字节存储空间。4、双精度型数据(Double 简写为:B )双精度型数据是具有更高精度的数值数据们一般很少使用。它主要用于数据表中的字段中, 。最大长度为 20 位,占 8 字节的存储空间。5、整数型数据(Integer 简写为 I)整型数据指不包含小数部分的数值型数据。最大长度为 10 位,占用 4 字节的存储空间。