计算机软件及应用8第八章表单设计与应用

上传人:hs****ma 文档编号:571600348 上传时间:2024-08-11 格式:PPT 页数:48 大小:1.25MB
返回 下载 相关 举报
计算机软件及应用8第八章表单设计与应用_第1页
第1页 / 共48页
计算机软件及应用8第八章表单设计与应用_第2页
第2页 / 共48页
计算机软件及应用8第八章表单设计与应用_第3页
第3页 / 共48页
计算机软件及应用8第八章表单设计与应用_第4页
第4页 / 共48页
计算机软件及应用8第八章表单设计与应用_第5页
第5页 / 共48页
点击查看更多>>
资源描述

《计算机软件及应用8第八章表单设计与应用》由会员分享,可在线阅读,更多相关《计算机软件及应用8第八章表单设计与应用(48页珍藏版)》请在金锄头文库上搜索。

1、计算机软件及应用计算机软件及应用8 第八章第八章 表单设计与应表单设计与应用用Visual FoxPro 程序设计第八章第八章 表表单设计与与应用用8.1 8.1 面向对象的概念面向对象的概念8.2 Visual FoxPro 8.2 Visual FoxPro 基类简介基类简介8.3 8.3 创建与管理表单创建与管理表单8.4 8.4 表单设计器表单设计器8.5 8.5 常用表单控件常用表单控件Visual FoxPro 程序设计目的:目的:了解面向对象程序设计的基本概念;了解面向对象程序设计的基本概念;掌握表单的设计,学会表单的运行方法;学会掌握表单的设计,学会表单的运行方法;学会使用表单

2、向导、表单设计器及表单生成器使用表单向导、表单设计器及表单生成器 ;掌握常用表单控件的使用掌握常用表单控件的使用 。重点:重点:表单的设计、表单设计器、表单生成表单的设计、表单设计器、表单生成器器 、常用控件在表单设计中的应用、控件属、常用控件在表单设计中的应用、控件属性的设置与代码编写性的设置与代码编写 。难点:难点:表单的设计、代码编写表单的设计、代码编写 Visual FoxPro 程序设计表单是表单是VFPVFP提供的用于建立应用程序界面的最主要的工具之一。提供的用于建立应用程序界面的最主要的工具之一。 8.1 8.1 8.1 8.1 面向对象的概念面向对象的概念面向对象的概念面向对象

3、的概念一、对象与类:一、对象与类: 1 1、对象(、对象(objectobject)。)。 对象就是具体的事物,客观世界存在的任何对象就是具体的事物,客观世界存在的任何实体。实体。 如:一个人、电话机、电脑等。如:一个人、电话机、电脑等。 2 2、类(、类(classclass)。)。 类就是对一类抽象对象性质的描述。类就是对一类抽象对象性质的描述。 如:学生、教师、衣服等。如:学生、教师、衣服等。二、子类与继承。二、子类与继承。 从类派生出来的新类,所产生的新类也称子从类派生出来的新类,所产生的新类也称子类。类。Visual FoxPro 程序设计 如:学生中有:男学生、女学生。如:学生中有

4、:男学生、女学生。 教师中有:青年教师、中年教师、老教师。教师中有:青年教师、中年教师、老教师。 其中:其中:1 1)子类继承父类的属性。)子类继承父类的属性。 2 2)子类有自己的新属性。)子类有自己的新属性。 8.2 Visual FoxPro8.2 Visual FoxPro8.2 Visual FoxPro8.2 Visual FoxPro基类简介基类简介基类简介基类简介 一、一、Visual FoxProVisual FoxPro基类。基类。 P192P192页表页表8.18.1示。示。 对象的生成函数:对象的生成函数:createcbjectcreatecbject 格式:格式:c

5、reatecbjectcreatecbject( , 1, 2 ) 对象属性的引用:对象属性的引用: . 对象方法的调用:对象方法的调用: .( ) Visual FoxPro 程序设计 例:在命令窗口中输入例:在命令窗口中输入 oform=createobject(oform=createobject(“formform”) ) oform.caption= oform.caption=“这是新建立的表单这是新建立的表单“ oform.color=255 &oform.color=255 &将表单的背景将表单的背景改为红色改为红色二、容器与控件:二、容器与控件: 在在VFPVFP中的类分为两

6、类:容器类和控件类。中的类分为两类:容器类和控件类。 容器:是用于包含其它控件或容器的对象。容器:是用于包含其它控件或容器的对象。P193P193表表8.38.3 控件:是被放置在容器中一种对象。控件:是被放置在容器中一种对象。 在引用对象的属性时,容器的层次关系。在引用对象的属性时,容器的层次关系。 ParentParent指当前对象的容器。指当前对象的容器。 ThisThis指当前对象。指当前对象。 ThisformThisform指当前对象所在的表单。指当前对象所在的表单。 ThisformsetThisformset指当前对象所在的表单集。指当前对象所在的表单集。Visual FoxP

7、ro 程序设计 如:右图示如:右图示 在在“命令命令1 1”上,改变上,改变 “命令命令2 2”的标题:的标题: this.Pmand2.caption=this.Pmand2.caption=“命令命令3 3” Tmand2.caption= Tmand2.caption=“命令命令3 3” This.caption= This.caption=“命令命令” &表示将当前对象标表示将当前对象标题改为命令题改为命令 三、事件。三、事件。 事件事件就是在就是在VFPVFP中已定义好可以被对象识别的动作。中已定义好可以被对象识别的动作。 如:单击(如:单击(ClickClick)、双击()、双击(

8、DblClickDblClick)、装入)、装入(LoadLoad)Visual FoxPro 程序设计 注:注:1 1)不同的对象能识别的事件不全相同。)不同的对象能识别的事件不全相同。 2 2)对象的事件是固定的不能新建。)对象的事件是固定的不能新建。 事件过程事件过程为处理特定事件而编写的一段程序。为处理特定事件而编写的一段程序。 即:当事件被触发时,该程序代码被即:当事件被触发时,该程序代码被执行。执行。 例:建立一个表单,在表单中添加一个命令控件,使用例:建立一个表单,在表单中添加一个命令控件,使用 户单击命令控件时,在表单上显示户单击命令控件时,在表单上显示“单击了鼠单击了鼠标左键

9、标左键” Visual FoxPro 程序设计8.3 8.3 8.3 8.3 创建与管理表单创建与管理表单创建与管理表单创建与管理表单一、创建表单。一、创建表单。 建立表单的方法:建立表单的方法: 1 1)使用表单向导。)使用表单向导。 2 2)使用表单设计器)使用表单设计器 3 3)在命令窗口中输入命令:)在命令窗口中输入命令: 格式:格式:CREA FORM CREA FORM Visual FoxPro 程序设计 1 1、使用表单向导建立表单:、使用表单向导建立表单: 方法:方法:1 1)在)在“项目管理器项目管理器”的的“文档文档”选项卡中,选项卡中,选择选择“表表 单单”后,单击后,

10、单击“新建新建”弹出一对弹出一对话框。话框。 2 2)从对话框中,单击)从对话框中,单击“表单向导表单向导”,弹,弹出一对话框。出一对话框。 3 3)从对话框中选择要建立的表单向导,)从对话框中选择要建立的表单向导,单击单击“确确 定定”,弹出表单向导步骤,根据表,弹出表单向导步骤,根据表单向导的提示,单向导的提示, 逐步输入,直到完成逐步输入,直到完成 。 注注1 1: 1 1)选择)选择“表单向导表单向导”,则建,则建 立基于一个表的表单。立基于一个表的表单。 2 2)选择)选择“一对多表单向导一对多表单向导”, 则建立包含两个表按一则建立包含两个表按一 对多关系的多表表单。对多关系的多表

11、表单。 如右图示如右图示Visual FoxPro 程序设计 例:使用例:使用“表单向导表单向导”分别建立:分别建立: 基于一个表的表单和基于两个表的一对多关基于一个表的表单和基于两个表的一对多关系多表系多表 表单。表单。 2 2、使用、使用“表单设计器表单设计器”建立表单:建立表单: 打开表单设计器的方法。打开表单设计器的方法。 法法1 1:1 1)在)在“项目管理器项目管理器”的的“文档文档”选项卡中,选择选项卡中,选择“表单表单” 后单击后单击“新建新建”弹出一对话框。弹出一对话框。 2 2)单击对话框中的)单击对话框中的“新建表单新建表单”打开打开“表表单设计器单设计器”。 法法2 2

12、:单击:单击“文件文件”菜单中菜单中“新建新建”打开对话框,再选择打开对话框,再选择“表单表单” 再单击再单击“新建表单新建表单”。 法法3 3: 在命令窗口中输入命令:在命令窗口中输入命令: 格式:格式:CREA FORM CREA FORM Visual FoxPro 程序设计 3 3、修改表单。、修改表单。 在在“项目管理器项目管理器”中,选择要修改中,选择要修改的表单,单击的表单,单击 “修改修改”打开表单设计器,就可以对已建立好的打开表单设计器,就可以对已建立好的表单进表单进 行修改。行修改。 4 4、运行表单。、运行表单。 方法方法1 1:单击常用工具栏中的:单击常用工具栏中的“运

13、行运行”按键。按键。 方法方法2 2:在:在“项目管理器中项目管理器中”选择要运行的表单,选择要运行的表单,单击单击“ 运行运行 ”按键。按键。 方法方法3 3:单击:单击“表单表单”菜单中的菜单中的“执行表单执行表单”。 方法方法4 4:右击鼠标,从弹出的菜单中单击:右击鼠标,从弹出的菜单中单击“执行执行表单表单”。 方法方法5 5:直接在命令窗口中使用命令:直接在命令窗口中使用命令: DO FORM DO FORM Visual FoxPro 程序设计 注注1 1:“方法方法5 5”也常用于在程序中运行表单。如在也常用于在程序中运行表单。如在代码、代码、 方法程序代码、程序、过程等中含:方

14、法程序代码、程序、过程等中含:DO DO FORM FORM 注注2 2:释放活动的表单。:释放活动的表单。 将表单的将表单的“ClosableClosable”设置为设置为“真真”值(值(.T.T.) 在程序中在程序中A A或代码中用命令:或代码中用命令:release release thisformthisform二、管理表单属性和方法。二、管理表单属性和方法。 1 1、常用的表单属性。、常用的表单属性。 P199P199页,表页,表8.78.7示示 2 2、创建新的属性。、创建新的属性。 在打开在打开“表单设计器表单设计器”的情况下,单击的情况下,单击“表单表单”菜单下菜单下 的的“新

15、建属性新建属性”打开对话框。输入属性名称和相打开对话框。输入属性名称和相应的说应的说 明后,单击明后,单击“添加添加”即可。即可。Visual FoxPro 程序设计 3 3、创建新的方法。、创建新的方法。 在打开在打开“表单设计器表单设计器”的情况下,单击的情况下,单击“表表单单”菜单下菜单下 的的“新建方法程序新建方法程序”打开对话框。输入名称和相应打开对话框。输入名称和相应的说的说 明后,单击明后,单击“添加添加”即可。即可。 注:删除新建的注:删除新建的“属性属性”或或“方法方法”,单击,单击“表单表单”菜菜单下单下 的的“编辑属性或方法程序编辑属性或方法程序”打开对话框。然后打开对话

16、框。然后选定选定 要删除的要删除的“属性属性”或或“方法方法”后,单击后,单击“移去移去”即可。即可。 4 4、编辑方法或事件代码。、编辑方法或事件代码。 打开代码窗口,选定相应的对象和过程后,打开代码窗口,选定相应的对象和过程后,直接直接 从键盘输入代码。从键盘输入代码。 打开代码窗口的方法:打开代码窗口的方法: 法法1 1:双击相应的对象。:双击相应的对象。 法法2 2:选定相应的对象,单击:选定相应的对象,单击“显示显示”菜单中的菜单中的“代代码码”。 Visual FoxPro 程序设计 法法3 3:在属性窗口中,双击列表框中相应的对象。:在属性窗口中,双击列表框中相应的对象。三、常用

17、的事件与方法。三、常用的事件与方法。 1 1、initinit事件。事件。 对象建立时被引发。即:在表单初始对象建立时被引发。即:在表单初始化时发生。化时发生。 例:建立一表单,在例:建立一表单,在FormForm对象的对象的initinit事件中事件中输入代码。输入代码。 this.backcolor=255 &this.backcolor=255 &背景为背景为红色红色 2 2、destroydestroy事件。事件。 对象释放时发生。对象释放时发生。 例:在建立表单中,若定义了全局变量,释例:在建立表单中,若定义了全局变量,释放时一放时一 般要清除。般要清除。 在在FormForm对象的

18、对象的initinit中:中:publ xpubl x x=3x=3 在在FormForm对象的对象的destroydestroy中:中:release release x x Visual FoxPro 程序设计 3 3、errorerror事件。事件。 对象方法或事件代码发生错误时被引对象方法或事件代码发生错误时被引发。发。 例:建立一表单,添加一个命令控件。例:建立一表单,添加一个命令控件。 在在command1command1对象的对象的clickclick事件中输入代码。事件中输入代码。 x=0x=0 x=x+ x=x+”3 3” 在在command1command1对象的对象的er

19、rorerror事件中输入代码。事件中输入代码。 wait wait “操作数据类型不正确操作数据类型不正确” window window 4 4、loadload事件。事件。 当表单被装入内存时发生。当表单被装入内存时发生。 例:例:FormForm对象的对象的loadload中:中: this.backcolor=255 &this.backcolor=255 &表示表示表单在装入时,表单在装入时, 将背景置为红色将背景置为红色 Visual FoxPro 程序设计 5 5、UnloadUnload事件。事件。 表单释放或关闭时被引发。表单释放或关闭时被引发。 注注1 1:在此事件代码中,

20、一般用户恢复正常的运行环:在此事件代码中,一般用户恢复正常的运行环境。境。 注注2 2: 以上四个事件引发的先后顺序。以上四个事件引发的先后顺序。 load ,init, destroy ,unloadload ,init, destroy ,unload 6 6、GotFocusGotFocus事件。事件。 当对象获得焦点时发生。当对象获得焦点时发生。 例:在表单添加一个文本框。例:在表单添加一个文本框。 在在Text1Text1对象的对象的GotFocusGotFocus中输入:中输入: this.value=this.value=“这是默认值这是默认值” 7 7、ClickClick事件

21、。事件。 单击鼠标时发生。单击鼠标时发生。 8 8、DubclickDubclick事件。事件。 Visual FoxPro 程序设计 8 8、DubclickDubclick事件。事件。 双击鼠标时发生。双击鼠标时发生。 9 9、RightclickRightclick事件。事件。 右击鼠标时发生。右击鼠标时发生。 1010、InterActiveChangeInterActiveChange事件。事件。 当对象的值发生改变时发生。当对象的值发生改变时发生。 如:在文本框中的如:在文本框中的 InterActiveChangeInterActiveChange事件输事件输入。入。 wait

22、wait “你改变了值你改变了值” windowwindow 11 11、releaserelease事件。事件。 将表单从内存中清除。将表单从内存中清除。 例:在表单添加一个命令控件,将命令控件的标例:在表单添加一个命令控件,将命令控件的标题改题改 为为“退出退出”,在命令控件的,在命令控件的ClickClick事件中事件中输入。输入。 thisform.releasethisform.release或或 release release thisform thisform Visual FoxPro 程序设计 12 12、RefreshRefresh方法。方法。 刷新表单内容。刷新表单内容。

23、 1313、ShowShow方法。方法。 显示表单。显示表单。 1414、HideHide方法。方法。 隐藏表单。隐藏表单。 1515、SetFocusSetFocus方法。方法。 让控件获得焦点。让控件获得焦点。 例:在表单中添加三个文本框,使当例:在表单中添加三个文本框,使当“Text1Text1”的的值发生值发生 改变时,焦点落在改变时,焦点落在“Text3Text3”中。中。 在在Text1Text1的的InterActiveChangeInterActiveChange中添加中添加代码。代码。 wait wait “你改变了值你改变了值” windowwindow thisform.

24、text3.setfocus thisform.text3.setfocus Visual FoxPro 程序设计 8.4 8.4 表单设计器表单设计器 一、表单设计器环境:一、表单设计器环境: 下面通过图,介绍表单设计器的:下面通过图,介绍表单设计器的: 设计窗口、属性窗口、表单控件工设计窗口、属性窗口、表单控件工具栏、具栏、 表单设计器工具栏表单设计器工具栏 打开表单设计器的后,打开表单设计器的后, 如图示如图示Visual FoxPro 程序设计用于选定某一对象往表单中添加标签控件往表单中添加编辑窗口往表单中添加一组命令控件往表单中添加复选框往表单中添加列表框往表单中添加表格往表单中添加

25、计时器往表单中添加OLE容器控件往表单中添加线条往表单中添加容器控件往表单中添加超级链接生成器锁定锁定按键分隔符往表单中添加形状往表单中添加OLE绑定控件往表单中添加页框往表单中添加图象往表单中添加微型控件往表单中添加组合框往表单中添加单选控件往表单中添加命令控件往表单中添加文本框查看所有的类设置TAB键的顺序查看数据环境代码窗口用户输入代码是否显示表单控件工具栏是否显示布局工具栏表单生成器用于自动设计表单控件格式是否显示调色板显示属性窗口注:OLE是指对象的链接或嵌入中间空白处是表单设计窗口Visual FoxPro 程序设计 当用户单击当用户单击“表单设计器表单设计器”的的“属性窗口属性窗

26、口”弹出一弹出一个属性窗口,如图示。个属性窗口,如图示。对象列表框属性列表取消按键接受按键函数按键 在属性窗口中,有五个在属性窗口中,有五个选项卡,分别是:选项卡,分别是: 1 1)全部:列出对象中的)全部:列出对象中的 全部属性。全部属性。 2 2)数据:列出对象显示)数据:列出对象显示 和操作数据的和操作数据的 属性。属性。 3 3)方法:列出对象的方)方法:列出对象的方 法和事件。法和事件。 4 4)布局:显示控件的布局属性。)布局:显示控件的布局属性。 5 5)其它:显示对象所属类、类库等其它属性或用户自)其它:显示对象所属类、类库等其它属性或用户自定定 义的属性。义的属性。 Visu

27、al FoxPro 程序设计 使用使用“表单设计器表单设计器”创建表单。创建表单。 1 1)用)用“快速表单快速表单”命令向表单添加字段。命令向表单添加字段。 A A、在所打开的表单设计器中,单击、在所打开的表单设计器中,单击“表单表单”菜单中菜单中 的的“快速表单快速表单”或表单设计器中的或表单设计器中的“表单生成器表单生成器” 按键。按键。 B B、从弹出的对话框中,选择所用的表,再、从弹出的对话框中,选择所用的表,再从可用从可用 字段中选定所用的安段,再单元击字段中选定所用的安段,再单元击“确定确定”。 注:在式样选项卡中,用于选择用户所需要注:在式样选项卡中,用于选择用户所需要的式样。

28、的式样。 如:如图示的表单设计器如:如图示的表单设计器 2 2)向表单添加控件。)向表单添加控件。 设计表单的过程,就是向表单添加控件,设计表单的过程,就是向表单添加控件,然后设然后设 置表单的属性的过程,步骤如下:置表单的属性的过程,步骤如下: Visual FoxPro 程序设计 A A、用鼠标指于、用鼠标指于“表单控件表单控件”中要添加的控件,单击。中要添加的控件,单击。 B B、将鼠标移入表单的某一位置,按住左键拖动鼠标,、将鼠标移入表单的某一位置,按住左键拖动鼠标, 然后再释放鼠标即可。然后再释放鼠标即可。 例:建立一个表单,分别往表单中添加例:建立一个表单,分别往表单中添加“文本框

29、文本框”、“编编 辑框辑框”和和“命令控件命令控件”。 3 3)给表单中的控件设置属性和输入代码。)给表单中的控件设置属性和输入代码。 A A、用鼠标选定相应的控件。、用鼠标选定相应的控件。 B B、单击、单击“表单设计器表单设计器”上的上的“属性窗口属性窗口”或或“代码窗代码窗口口”按按 键打开属性窗口或代码窗口。键打开属性窗口或代码窗口。 C C、从代码窗口中输入代码,从属性窗口中设置属性。、从代码窗口中输入代码,从属性窗口中设置属性。 例:设计一个表单,完成以下操作:例:设计一个表单,完成以下操作: (1 1)将表单标题改为)将表单标题改为“学生基本情况学生基本情况”, ,背景为背景为“

30、红色红色”。 (2 2)使用)使用“快速表单生成器快速表单生成器”将将“学生基本情况学生基本情况”中的中的 Visual FoxPro 程序设计 的的“学号、姓名、入学成绩、照片学号、姓名、入学成绩、照片”添加到表添加到表单。单。 (3 3)在表单中设计三个)在表单中设计三个“命令按键命令按键”,把标题分别设置为,把标题分别设置为 “上一条记录上一条记录”、“下一条记录下一条记录”、“退出退出”,并分别在代,并分别在代 码窗口中,输入如下代码。码窗口中,输入如下代码。 skip -1 skip release thisform if bof( ) if eof( ) go top go bot

31、tom endif endif thisform.refresh thisform.refresh 保存表单。 A、 单击“文件”菜单中的“保存”选项或工具栏中的“保 存”按键,弹出一对话框。 B、在保存文本框中输入表单名后,单击“保存”即可。Visual FoxPro 程序设计二、控件的操作与布局。二、控件的操作与布局。 1 1、控件的基本操作。、控件的基本操作。 1 1)控件的选择。)控件的选择。 单个控件单个控件直接单击要选定的控件。直接单击要选定的控件。 相邻的多个控件相邻的多个控件按下左键拖动鼠标。按下左键拖动鼠标。 不相邻的多个控件不相邻的多个控件在按下在按下SHIFTSHIFT下

32、,用下,用以上的以上的 根据前两种方法选择。根据前两种方法选择。 2 2)移动控件。)移动控件。 在选定控件的情况下,用鼠标拖动或在选定控件的情况下,用鼠标拖动或直接用方直接用方 向键来进行移动。向键来进行移动。 3 3)调整控件的大小。)调整控件的大小。 用鼠标拖动控件的某个控点来改变。用鼠标拖动控件的某个控点来改变。 Visual FoxPro 程序设计 4 4)复制控件。)复制控件。 通过通过“编辑编辑”菜单中的菜单中的“复制复制”与与“粘贴粘贴”完成复制,然完成复制,然 后后将复制的控制移动到相应的位置。将复制的控制移动到相应的位置。 5 5)删除控件。)删除控件。 在选定控件的情况下

33、,按下在选定控件的情况下,按下“DELDEL”键。键。 2 2、整控的布局。、整控的布局。 通过布局工具栏来完成。通过布局工具栏来完成。 3 3、设置、设置TABTAB键。键。 指在表单运行时,用户可以用指在表单运行时,用户可以用TABTAB键盘来移动键盘来移动焦点。焦点。 设置设置TABTAB键有两种设置方式:交互方式与列表键有两种设置方式:交互方式与列表方式。方式。 1 1)设置方式的选择:)设置方式的选择: 在在“工具工具”菜单中的菜单中的“选项选项”菜单菜单弹出对话框,选弹出对话框,选 择择“表单表单”选项卡进行设置。选项卡进行设置。 Visual FoxPro 程序设计 交互方式下设

34、置交互方式下设置TABTAB键。键。 单击单击“显示显示”菜单中的菜单中的“TABTAB键次序键次序”或单击表单工或单击表单工 具栏中的具栏中的“设置设置TABTAB键次序键次序”按键。然后用鼠标单按键。然后用鼠标单击要击要 设置的控件即可。设置的控件即可。 在列表方式一设置在列表方式一设置TABTAB键。键。 单击单击“显示显示”菜单中的菜单中的“TABTAB键次序键次序”或单击表单工或单击表单工 具栏中的具栏中的“设置设置TABTAB键次序键次序”按键。然后从弹出的按键。然后从弹出的列表列表 框中进行设置。框中进行设置。三、数据环境:三、数据环境: 指表单中的数据环境。数据环境包括表、指表

35、单中的数据环境。数据环境包括表、表之间的表之间的 联系、视图。联系、视图。 添加了数据环境的表单,当表单打开时,数添加了数据环境的表单,当表单打开时,数据环境据环境 中的表也会自动打开。中的表也会自动打开。 Visual FoxPro 程序设计 1 1、数据环境的两个属性。、数据环境的两个属性。 AutoOpenTables AutoOpenTables 用于设置当表单打开时,数据环境中用于设置当表单打开时,数据环境中的表、视的表、视 图是否也随之打开。默认为图是否也随之打开。默认为 .T.T. AutoCloseTables AutoCloseTables 用于设置当表单释放或关闭时,数据用

36、于设置当表单释放或关闭时,数据环境中的表、环境中的表、 视图是否也随之关闭。默认为视图是否也随之关闭。默认为 .T.T. 2 2、打开数据环境。、打开数据环境。 单击单击“表单设计器表单设计器”工具栏上的工具栏上的“数数据环境据环境”按键或按键或 “显示显示”菜单中的菜单中的“数据环境数据环境”命令。命令。 3 3、向数据环境添加表、视图。、向数据环境添加表、视图。 4 4、从数据环境中移去表、视图。、从数据环境中移去表、视图。Visual FoxPro 程序设计 5 5、在数据环境中设置关系。、在数据环境中设置关系。 6 6、在数据环境中编辑关系。、在数据环境中编辑关系。 7 7、向表单添加

37、字段。、向表单添加字段。 8.5 8.5 8.5 8.5 常用表单控件常用表单控件常用表单控件常用表单控件一、标签(一、标签(LabelLabel)控件。)控件。 标签一般是用于在表单中显示文本。标签一般是用于在表单中显示文本。 CaptionCaption属性:属性: 用于指定标签的标题。用于指定标签的标题。 在标签中,使用在标签中,使用“ ”来设置一个快来设置一个快捷访问键。捷访问键。 注:若在标签中用注:若在标签中用“”来设置快捷访问键,则是把来设置快捷访问键,则是把焦点焦点 传递给传递给TABTAB键次序紧跟着标签的下一个控件。键次序紧跟着标签的下一个控件。 例:在表单中添加一个标签控

38、件,单击鼠标时,标签例:在表单中添加一个标签控件,单击鼠标时,标签 显示显示“你单击了鼠标左键你单击了鼠标左键”,右击时显示,右击时显示“你右击了鼠标你右击了鼠标右键右键”Visual FoxPro 程序设计二、命令二、命令(Command Button)(Command Button)控件。控件。 用于用户向计算机发命令。一般要在命令代码用于用户向计算机发命令。一般要在命令代码窗口窗口 中输入命令代码,说明要完成的动作。中输入命令代码,说明要完成的动作。 命令控件中的几个属性。命令控件中的几个属性。 DefaultDefault 定义命令控件为定义命令控件为“确认确认”按键。默认值为按键。默

39、认值为.F.F.。当设置。当设置 为为.T.T.时,按回车键,执行该命令控键中的:时,按回车键,执行该命令控键中的:ClickClick事件事件代码。代码。 注:一个表单只能有一个注:一个表单只能有一个“确认确认”按键。按键。 Cancel Cancel 定义命令控件为定义命令控件为“取消取消”按键。默认值为按键。默认值为.F.F.。当设置当设置 为为.T.T.时,按时,按EscEsc键,执行该命令控键中的:键,执行该命令控键中的:ClickClick事件代事件代码。码。 注:一个表单只能有一个注:一个表单只能有一个“取消取消”按键。按键。Visual FoxPro 程序设计 Enabled

40、Enabled 定义该命令控件是否可用。默认值为定义该命令控件是否可用。默认值为.T.T.,表示可用。表示可用。 VisibleVisible 定义该命令控件是否隐藏。默认值为定义该命令控件是否隐藏。默认值为.T.T.,表示可见。表示可见。 例:设计一个表单,添加四个命令控件。例:设计一个表单,添加四个命令控件。 单击第一个命令控件,使该控件变为不可单击第一个命令控件,使该控件变为不可用。用。 单击第二个命令控件,使该控件变为隐藏。单击第二个命令控件,使该控件变为隐藏。 单击第三个命令控件,使该控件恢复前两单击第三个命令控件,使该控件恢复前两个控件。个控件。 单击第四个命令控件,退出表单。单击

41、第四个命令控件,退出表单。三、命令组三、命令组(CommandGroup)(CommandGroup)控件。控件。 是包含一组命令控件的容器控件。是包含一组命令控件的容器控件。 并并可以可以单独设单独设 置每个命令控件的属性、方法、事件。置每个命令控件的属性、方法、事件。Visual FoxPro 程序设计 下面介绍命令控件组的几个属性。下面介绍命令控件组的几个属性。 1 1、ButtonCountButtonCount属性。属性。 用来设置命令控件组含命令控件的个数。用来设置命令控件组含命令控件的个数。 2 2、 ButtonsButtons属性。属性。 用于存储命令组中各按键的数组,该属用

42、于存储命令组中各按键的数组,该属性数组是性数组是 在创建命令组建立时建立。在创建命令组建立时建立。 如:如:Buttons(2)Buttons(2)表示命令按键组的第二个命令按表示命令按键组的第二个命令按键。键。 例:建立一个含四个命令按键组的表单,当单击表单例:建立一个含四个命令按键组的表单,当单击表单时时 隐藏第二个命令控件。隐藏第二个命令控件。 在表单的在表单的ClickClick时件中输入如下代码。时件中输入如下代码。 mandgroup1.Buttons(2).Visible=.Fmandgroup1.Buttons(2).Visible=.F. 3 3、ValueValue属性。属

43、性。 该属性可以是数值型,也可以是字符型。该属性可以是数值型,也可以是字符型。 Visual FoxPro 程序设计 当当valuevalue赋初值为赋初值为0 0,表示,表示是数值型时,用于表示第是数值型时,用于表示第I I个按个按 键被选中。键被选中。 例:建立一个含三个命令按键组的表单。例:建立一个含三个命令按键组的表单。 在命令按键组中的在命令按键组中的ClickClick事件输入。事件输入。 do casedo case case this.value=1 case this.value=1 ?“你单击了第一个按键你单击了第一个按键” case this.value=2case th

44、is.value=2 ?“你单击了第二个按键你单击了第二个按键” case this.value=3 case this.value=3 ?“你单击了第三个按键你单击了第三个按键” endcaseendcase 当当valuevalue没有赋初值时,是字符型时,表示命令按键没有赋初值时,是字符型时,表示命令按键中的中的 Caption Caption的值被选中。的值被选中。 Visual FoxPro 程序设计例:在上例中,分别命令按键例:在上例中,分别命令按键1 1、2 2、3 3的标题的标题CaptionCaption的值改的值改 为为“命令命令1 1”、 “命令命令2 2” 、“命令命令

45、3 3”,则以上,则以上代码可以代码可以 改改 do case do case case this.value= case this.value=“命令命令1 1” ?“你单击了第一个按键你单击了第一个按键” case this.value= case this.value= “命令命令2 2” ?“你单击了第二个按键你单击了第二个按键” case this.value= case this.value= “命令命令3 3” ?“你单击了第三个按键你单击了第三个按键” endcaseendcase四、文本框(四、文本框(TextBoxTextBox)控件。控件。 是一个常用控件,用于显示或输入

46、内存变量、是一个常用控件,用于显示或输入内存变量、字段字段 变量的值。变量的值。 1 1、ControlSourceControlSource属性。属性。 用于指定文本框的数据来源。用于指定文本框的数据来源。 Visual FoxPro 程序设计 ControlSourceControlSource属性还可以用于编辑框、命令组、选属性还可以用于编辑框、命令组、选项按项按 选项组、复选框、列表框、组合框。选项组、复选框、列表框、组合框。 2 2、ValueValue属性。属性。 用于指定该文本框的默认值。若不指定则默认为用于指定该文本框的默认值。若不指定则默认为空字空字 符串。符串。 3 3、P

47、asswordCharPasswordChar属性。属性。 用于设定文本框显示的占位符。用于设定文本框显示的占位符。 如:如: 将将PasswordCharPasswordChar设置为设置为“* *”。则不管用户从键。则不管用户从键盘输盘输 入什么值,该文本框均显示入什么值,该文本框均显示“* *” 4 4、InputMaskInputMask属性。属性。 用于指定文本框的输入或显示格式。用于指定文本框的输入或显示格式。 各格式符如各格式符如P216P216页表页表8.158.15示示Visual FoxPro 程序设计 例:建立一个表单,用于输入例:建立一个表单,用于输入“口令口令”,三次

48、都不正,三次都不正确时,确时, 关闭表单。关闭表单。 建立一个新属性建立一个新属性N N,用于计数。添加一个文用于计数。添加一个文本框,本框, 一个命令控件。将命令按键的标题改为一个命令控件。将命令按键的标题改为“确定确定”,在命在命 令按键的令按键的ClickClick事件中添加代码。事件中添加代码。 if thisform.text1.value=if thisform.text1.value=“12341234” wait wait “欢迎使用欢迎使用” window window timeout 5timeout 5 thisform.release thisform.release

49、else else this.k=this.k+1 this.k=this.k+1 if this.k=3 if this.k=3 wait wait “非法用户!非法用户!” window window timeout 5timeout 5 thisform.release thisform.release elseelse wait wait “口令错,重输口令错,重输” window timeout 5window timeout 5 endifendif endif endifVisual FoxPro 程序设计五、编辑框(五、编辑框(EditboxEditbox) 与文本框一样,用于

50、输入与编辑数据。与文本框一样,用于输入与编辑数据。 1 1、AllowTabsAllowTabs属性。属性。 指在编辑框中是否能使用指在编辑框中是否能使用TabTab键。键。 默认是默认是. .F.F.,不允许使用,按不允许使用,按TabTab键则跳出键则跳出文本框。文本框。 2 2、HideSelectionHideSelection属性。属性。 用于设置,当编辑框失去焦点时,编辑框用于设置,当编辑框失去焦点时,编辑框中选定中选定 的文本是否仍为选定状态。的文本是否仍为选定状态。 3 3、ReadOnlyReadOnly属性。属性。 用于设置文本框的内容是否能被编辑。用于设置文本框的内容是否

51、能被编辑。 注:当编辑框的注:当编辑框的 ReadOnlyReadOnly属性为属性为. .T.T.或或EnabledEnabled的的属性为属性为 . .F.F.时,编辑框的内容都是只读,但前者时,编辑框的内容都是只读,但前者可以将焦可以将焦 点移入文本框,并可以移动流动条,后者点移入文本框,并可以移动流动条,后者不行。不行。Visual FoxPro 程序设计 4 4、ScrollBarsScrollBars属性。属性。 用于设置文本框是否含用于设置文本框是否含 滚动条。滚动条。 注:在表单、表格中也含此属性。注:在表单、表格中也含此属性。 5 5、SelstartSelstart属性。属

52、性。 返回用户在编辑框中所选文本的起始位置或返回用户在编辑框中所选文本的起始位置或插入点。插入点。 注:文本框、组合框也含有该属性。注:文本框、组合框也含有该属性。 6 6、SelLenghtSelLenght属性。属性。 返回用户在控件的文本输入区所选定的字符返回用户在控件的文本输入区所选定的字符数目或数目或 指定要选的字符数目。指定要选的字符数目。 注:文本框、组合框也含有该属性。注:文本框、组合框也含有该属性。 7 7、SelTextSelText属性。属性。 返回用户在区内所定的文本。若没有选任何返回用户在区内所定的文本。若没有选任何文本,文本, 则返回空串。则返回空串。 注:文本框、

53、组合框也含有该属性。注:文本框、组合框也含有该属性。Visual FoxPro 程序设计 例例8.8(P2198.8(P219页页) )程序代码如下:程序代码如下: 1 1)先设置)先设置HideSelectionHideSelection属性值为属性值为.F.F. 2 2)查找命令按键的)查找命令按键的ClickClick代码。代码。 n=AT(n=AT(“bookbook”,thisform.edit1.value) ,thisform.edit1.value) if n0 if n0 thisform.edit1.selstart=n-1 thisform.edit1.selstart=

54、n-1 thisform.edit1.sellength=len(thisform.edit1.sellength=len(“bookbook”) ) ense ense wait windows wait windows “没有与之匹配的没有与之匹配的单词单词” endifendif 3 3)替换命令按键)替换命令按键clickclick的代码如下:的代码如下: if if thisform.edit1.seltext=thisform.edit1.seltext=“bookbook” thisform.edit1.seltext=thisform.edit1.seltext=“clockc

55、lock” ense ense wait windows wait windows “没有替换的单词没有替换的单词” endifendifVisual FoxPro 程序设计六、复选框六、复选框(CheckBox)(CheckBox)控件。控件。 在复选框中,只有两种状态的值。在复选框中,只有两种状态的值。.t.t.与与.f.f. 1 1、CaptionCaption属性。属性。 用于指定复选框旁边的文字。用于指定复选框旁边的文字。 2 2、ValueValue属性。属性。 用于指明复选框当前状态的值。用于指明复选框当前状态的值。 末选中:末选中:0 0或或.F.F. 选中:选中:1 1或或.

56、T.T. 不确定:不确定:2 2或或.NULL.(.NULL.(只在代码中起作只在代码中起作用用) ) 3 3、ControlSourceControlSource属性。属性。 用于建立与复选框联系的数据源。用于建立与复选框联系的数据源。 Visual FoxPro 程序设计七、选项组七、选项组(OptionGroup)(OptionGroup)控件。控件。 1 1、ButtonCountButtonCount属性。属性。 用于指选项组中选项按键的数目。用于指选项组中选项按键的数目。 2 2、ValueValue属性。属性。 用于指明选项组中哪个选项按键被选中。用于指明选项组中哪个选项按键被选

57、中。该值可该值可 以是数值型,也可以是字符型。以是数值型,也可以是字符型。 3 3、 ControlSourceControlSource属性。属性。 用于建立与复选框联系的数据源。用于建立与复选框联系的数据源。 4 4、ButtonButton属性。属性。 用于选项组中各按键的数组。用于选项组中各按键的数组。 如:如:Buttons(2)Buttons(2)表示选项组的第二个按键。表示选项组的第二个按键。 mandgroup1.Buttons(2).Caption=mandgroup1.Buttons(2).Caption=“查找查找”Visual FoxPro 程序设计八、列表框八、列表框

58、(ListBox)(ListBox)控件。控件。 列表框提供一组条目(数据项),供用户列表框提供一组条目(数据项),供用户选择。选择。 1 1、RowSourceTypeRowSourceType属性与属性与RowSourceRowSource属性。属性。 RowSourceTypeRowSourceType指明列表框中条目数据源的指明列表框中条目数据源的类型。类型。 RowSourceRowSource指明列表框的条目数据源。指明列表框的条目数据源。 RowSourceTypeRowSourceType属性值,详见属性值,详见P222P222中表中表8.208.20 2 2、ListList

59、属性。属性。 用以存取列表框中数据条目的字符数组。用以存取列表框中数据条目的字符数组。 3 3、ListCountListCount属性。属性。 指明列表框中数据条目的数目。指明列表框中数据条目的数目。 4 4、ColumnCountColumnCount属性。属性。 指明列表框的列数。指明列表框的列数。Visual FoxPro 程序设计 5 5、ValueValue属性。属性。 返回列表框中被选中的条目。返回列表框中被选中的条目。 6 6、ControlSourceControlSource属性。属性。 用于建立与列表框联系的数据源。用于建立与列表框联系的数据源。 7 7、Selected

60、Selected属性。属性。 指定列表框内的某个条目是否处于选定状态。指定列表框内的某个条目是否处于选定状态。 8 8、MultiSelectMultiSelect属性。属性。 用于指定列表框中的各条目是否可以进行多用于指定列表框中的各条目是否可以进行多得选择。得选择。 九、组合框(九、组合框(ComboBoxComboBox)属性。)属性。 组合框与列表框类似,是列表框与文本的组组合框与列表框类似,是列表框与文本的组合。合。 StyleStyle属性:属性:“0 0”设置是下拉组合框,设置是下拉组合框,“1 1”设置是下拉列设置是下拉列表框。表框。 下拉组合框下拉组合框:用户可以从列表中选择

61、,也可以从键盘输入。:用户可以从列表中选择,也可以从键盘输入。 下拉列表框下拉列表框:用户只能从列表中选择,不能从键盘输入。:用户只能从列表中选择,不能从键盘输入。Visual FoxPro 程序设计 十、表格(十、表格(GridGrid)属性。)属性。 表格是一个容器,按行和列。表格是一个容器,按行和列。 常用的表格属性。常用的表格属性。 1 1、RecordSourceTypeRecordSourceType属性与属性与RecordSourceRecordSource属性。属性。 RecordSourceTypeRecordSourceType指明表格中数据源的类型。指明表格中数据源的类型

62、。 RecordSourceRecordSource指明表格的数据源。指明表格的数据源。 RecordSourceTypeRecordSourceType属性值,详见属性值,详见P227P227中中表表8.238.23 2 2、ColumnCountColumnCount属性。属性。 用于指定表格的列数。用于指定表格的列数。 3 3、LinkMasterLinkMaster属性。属性。 用于指定在表格控件中所显示的子表的父表用于指定在表格控件中所显示的子表的父表名称。名称。 即:父表与子表之间建立一种一对多的联即:父表与子表之间建立一种一对多的联系。系。 Visual FoxPro 程序设计

63、4 4、ChildOrderChildOrder属性。属性。 用于指为建立一对多的关联关系,子表所要用于指为建立一对多的关联关系,子表所要用到的用到的 索引。类似于:索引。类似于:set order to set order to 命令。命令。 常用的列属性。常用的列属性。 1 1、 ControlSourceControlSource属性。属性。 用于指定列中显示的数据源。如:字段用于指定列中显示的数据源。如:字段 2 2、 CurrentControlCurrentControl属性。属性。 用于指定列对象中的一个控件,该控件用惧用于指定列对象中的一个控件,该控件用惧显示和显示和 接收列中

64、活动单元格的数据。接收列中活动单元格的数据。 3 3、SparseSparse属性。属性。 用于指定确定用于指定确定 CurrentControlCurrentControl属性是影响属性是影响列中的所列中的所 有单元格还是只影响活动的单元格。有单元格还是只影响活动的单元格。 Visual FoxPro 程序设计 常用的标头(常用的标头(HeaderHeader)属性。)属性。 1 1、 CaptionCaption属性。属性。 用于指定表头对象的标题文本。用于指定表头对象的标题文本。 2 2、AlignmentAlignment属性。属性。 用于指定表头文本在对象中显示的对齐方用于指定表头文

65、本在对象中显示的对齐方式。式。 详见详见P229P229页:表页:表8.248.24的各设置值。的各设置值。 十一、页框(十一、页框(PageFramePageFrame)控件。)控件。 页框是包含页面的容器对象。页框是包含页面的容器对象。 1 1、PageCountPageCount属性。属性。 用于指定页框对象所包含的页对象的数量。用于指定页框对象所包含的页对象的数量。 2 2、PagesPages属性。属性。 PagesPages属性是一数组,用于存储页框中的某属性是一数组,用于存储页框中的某个页个页 对象。对象。Visual FoxPro 程序设计 2 2、PagesPages属性。属

66、性。 PagesPages属性是一数组,用于存储页框中的某属性是一数组,用于存储页框中的某个页个页 对象。如:对象。如:Pages(2)Pages(2)表示页框中的第二页表示页框中的第二页 thisform.Pageframe1.Pages(2).Capion=thisform.Pageframe1.Pages(2).Capion=“第二第二页页” 3 3、TabsTabs属性。属性。 用于指定页框中是否显示页面标签栏。用于指定页框中是否显示页面标签栏。 4 4、TabStretchTabStretch属性。属性。 用于设置页面标题是否要设置为多行显示。用于设置页面标题是否要设置为多行显示。 5 5、ActivePageActivePage属性。属性。 返回页框中活动页的页号或指定页成为活动返回页框中活动页的页号或指定页成为活动页。页。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 医学/心理学 > 基础医学

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号