VFP表单设计基础ppt课件

上传人:壹****1 文档编号:592586227 上传时间:2024-09-21 格式:PPT 页数:39 大小:708KB
返回 下载 相关 举报
VFP表单设计基础ppt课件_第1页
第1页 / 共39页
VFP表单设计基础ppt课件_第2页
第2页 / 共39页
VFP表单设计基础ppt课件_第3页
第3页 / 共39页
VFP表单设计基础ppt课件_第4页
第4页 / 共39页
VFP表单设计基础ppt课件_第5页
第5页 / 共39页
点击查看更多>>
资源描述

《VFP表单设计基础ppt课件》由会员分享,可在线阅读,更多相关《VFP表单设计基础ppt课件(39页珍藏版)》请在金锄头文库上搜索。

1、1第第6 6章章 表表单设计基基础w6.1 6.1 表单的基本操作表单的基本操作w6.2 6.2 面向对象程序设计基础面向对象程序设计基础w6.3 6.3 表单设计器表单设计器w6.4 6.4 常用表单控件常用表单控件26.1 表单的基本操作表单的基本操作 表单表单(Form)(Form)是是VFPVFP提供的用于建立应用程序界面的最主要提供的用于建立应用程序界面的最主要的对象之一的对象之一 ,相当于,相当于WINDOWSWINDOWS应用程序的窗口应用程序的窗口 。表单的基本操作过程:表单的基本操作过程: 创建表单创建表单 用表单设计器修改或新建表单用表单设计器修改或新建表单 保存表单保存表

2、单 运行表单运行表单36.1.1 使用表单设计器创建或修改表单使用表单设计器创建或修改表单 1启动表单设计器启动表单设计器 在命令窗口输入命令:在命令窗口输入命令: CREATE FORM 表单名表单名 (创建创建) MODIFY FORM 表单名表单名 (修正修正)42表表单设计单设计器介器介绍绍 “表表单设计单设计器窗口包含正在器窗口包含正在设计设计的表的表单单,表表单单窗口只能在窗口只能在“表表单设计单设计器窗口内移器窗口内移动动。用。用户户可在表可在表单单窗口中可窗口中可视视化化地添加和修改控件、改地添加和修改控件、改变变控件布局。以新建方式启控件布局。以新建方式启动动表表单单设计设计

3、器器时时,系系统统将默将默认为认为用用户创户创建一个空白表建一个空白表单单。 6.1.1 使用表单设计器创建或修改表单使用表单设计器创建或修改表单“对象下拉列表框图对象下拉列表框图(P182)页框选项卡页框选项卡属性设置框属性设置框(P183)(P183)53数据数据环环境境 “数据数据环环境指表境指表单单(或或报报表表)所用的数据源所用的数据源,包括表、包括表、视视图图和它和它们们之之间间的关系。表的关系。表单设计单设计器器环环境下境下,单击单击“表表单设计单设计器工具器工具栏栏上的上的“数据数据环环境按境按钮钮,或或选择选择“显显示示”“数据数据环环境命令境命令,即可打开即可打开“数据数据

4、环环境境设计设计器窗口器窗口,此此时时,系系统统菜菜单单栏栏上将出上将出现现“数据数据环环境菜境菜单单。6.1.1 使用表单设计器创建或修改表单使用表单设计器创建或修改表单66.1.1 使用表单设计器创建或修改表单使用表单设计器创建或修改表单4快速表快速表单单 能在表能在表单单窗口窗口为为当前表当前表单单迅速迅速产产生生选选定的字段定的字段变变量,量,调调用用“表表单单生成器来完成。生成器来完成。调用表用表单生成器的方法有三种:生成器的方法有三种:系系统菜菜单中【表中【表单】| |【快速表【快速表单】命令。】命令。“表表单设计器工具器工具栏中的中的“表表单生成器按生成器按钮。右右击表表单窗口,

5、在窗口,在弹出的快捷菜出的快捷菜单中中选择“生成器命令。生成器命令。76.1.2 保存后运行表单保存后运行表单v在命令窗口输入命令:在命令窗口输入命令:v DO FORM DO FORM 8面向对象程序设计:面向对象程序设计:思想:将问题划分为类,由类定义的对象之间互发消息来完成功能。思想:将问题划分为类,由类定义的对象之间互发消息来完成功能。主要结构特点:主要结构特点: 1.程序一般由类的定义和类的使用两部分组成,在程序中定义各对象并程序一般由类的定义和类的使用两部分组成,在程序中定义各对象并规定它们之间的传递消息的规律;规定它们之间的传递消息的规律; 2.程序中的一切操作都是通过向对象发送

6、消息来实现的,对象接收到消程序中的一切操作都是通过向对象发送消息来实现的,对象接收到消息后,启动有关方法来完成相应的操作。息后,启动有关方法来完成相应的操作。重点重点:数据。数据。6.2 面向对象程序设计基础面向对象程序设计基础 面向过程程序设计面向过程程序设计(结构化程序设计结构化程序设计):思想:核心是功能分解。将问题先按解决流程分解成若干个模思想:核心是功能分解。将问题先按解决流程分解成若干个模块功能块;再设计数据结构;最后编写函数来对数据进行操作。块功能块;再设计数据结构;最后编写函数来对数据进行操作。重点在过程,当数据结构发生改变时,所有代码都需改变。重点在过程,当数据结构发生改变时

7、,所有代码都需改变。重点重点:过程。过程。91 1对象对象 客观世界的任何事物都可以被看成是对象,对象是客观世界的任何事物都可以被看成是对象,对象是反映客观事物属性及其行为特征的描述反映客观事物属性及其行为特征的描述, ,是具体的。是具体的。对象属性:用来表示对象的状态,用变量来描述。对象属性:用来表示对象的状态,用变量来描述。对象方法:描述对象行为的过程,用过程或函数实现对象方法:描述对象行为的过程,用过程或函数实现6.2.1 6.2.1 对象对象106.2.2 6.2.2 类类(P250)(P250)n 类类:对一类相似对象的性质描述,这些对象具有相对一类相似对象的性质描述,这些对象具有相

8、同种类的属性以及方法。同种类的属性以及方法。n 相当于相当于C语言中的结构体,但除了描述变量成员语言中的结构体,但除了描述变量成员之外,还要描述对象的行为特征,即函数。之外,还要描述对象的行为特征,即函数。n 对对象和象和类类的区分的区分: :n 类类是是对对象的模板象的模板, ,规规定定对对象的属性象的属性, ,事件和方法程序。事件和方法程序。n 对对象通象通过类过类来来产产生生, ,通通过类过类来定来定义对义对象。象。n 对对象是象是类类的的实实例。任何一个例。任何一个对对象都是某个象都是某个类类的一个的一个实实例。例。n 类类抽象抽象, ,不分配存不分配存储储空空间间; ;对对象具体象具

9、体, ,占用内存空占用内存空间间。n 对对象属性象属性访问访问以及以及对对象方法象方法调调用的基本格式:用的基本格式:n . n .(参数列表参数列表)11 类具有继承性、封装性和多态性三种基本特性。类具有继承性、封装性和多态性三种基本特性。 1) 继承性:指通过继承关系利用已有的类构造新类。继承性:指通过继承关系利用已有的类构造新类。在面向对象的方法里在面向对象的方法里,继承是指在基于父类继承是指在基于父类(现有的类现有的类)创建创建子类子类(新类新类)时时,子类继承了父类的方法和属性子类继承了父类的方法和属性,可以为子类添可以为子类添加新方法和属性。加新方法和属性。 2) 封装性封装性 封

10、装是一种信息封装是一种信息隐隐藏技藏技术术,对对象内部象内部对对用用户户是是隐隐藏的,藏的,不可直接不可直接访问访问;用;用户户只能只能见见到到对对象封装界面上的信息,象封装界面上的信息,通通过对过对象的外部接口象的外部接口访问对访问对象。用象。用户户向向对对象象发发送消息,送消息,对对象根据收到的消息象根据收到的消息调调用内部方法作出响用内部方法作出响应应。1 1类的特性类的特性3) 多多态态性性 所所谓谓多多态态即一个名即一个名词词可具有多种可具有多种语义语义,多个函,多个函数可具有相同的函数名,但数可具有相同的函数名,但实现实现方法不同。方法不同。12 VFP下,下,进进行面向行面向对对

11、象的程序象的程序设计设计或或创创建建应应用程序,用程序,要用到要用到VFP系系统统提供的基提供的基础类础类,即,即VFP基基类类,它是系它是系统统本本身内含的,并不存放在身内含的,并不存放在类库类库中。基中。基类类是是VFP为为用用户预户预先先定定义义的的类类,用,用户户可用基可用基类类来来创创建新建新类类,此,此时时基基类类是父是父类类,新新类类是子是子类类。2 2VFPVFP中的类中的类Visual FoxproVisual Foxpro基类列表基类列表CommandButton类名类名含义含义类名类名含义含义ActiveDoc活动文档活动文档Label标签标签CheckBox复选框复选框

12、Line线条线条Column(表格列(表格列Listbox列表框列表框ComboBox组合框组合框OlecontrolOLE容器控件容器控件OleboundcontrolOLE绑定控件绑定控件CommandGroup命令按钮组命令按钮组OptionButton选项按钮选项按钮Container容器容器Optiongroup选项按钮组选项按钮组Contorl控件控件Page页页Custom定制定制PageFrame页框页框EditBox编辑框编辑框ProjectHook项目挂钩项目挂钩Form表单表单Separator分隔符分隔符FormSet表单集表单集Shape图形图形Grid 表格表格Sp

13、inner微调控件微调控件Header(列标头(列标头TextBox文本框文本框HyperLink超级链接超级链接Timer定时器定时器Image图象图象ToolBar工具栏工具栏命令按钮命令按钮14156.2.3 6.2.3 容器类和控件类容器类和控件类VFPVFP中的类分为两种:容器类中的类分为两种:容器类(container classes)(container classes)与控件类与控件类(control classes),(control classes),可分别生成容器可分别生成容器( (对象对象) )和控件和控件( (对象对象) )。n 容器:可容容器:可容纳纳其他其他对对象

14、,并允象,并允许访问许访问所包含所包含的的对对象。象。n 容器容器( (如表如表单单) )自身是一个自身是一个对对象,可以把按象,可以把按钮钮、编辑编辑框、文本框等包含在其中。框、文本框等包含在其中。 常用容器常用容器及及对对象象见见P181-P181-表表6.26.2n 控件:不能容控件:不能容纳纳其他其他对对象。当将一个控件象。当将一个控件对对象放入容器中象放入容器中, 编编程程时时引用引用该对该对象象时时有两种方法。有两种方法。166.2.4 自定义类的创建与使用自定义类的创建与使用 v 将表将表单单和控件保存和控件保存为类为类v 1)【文件】【文件】|【另存【另存为类为类】命令】命令,

15、翻开翻开“另存另存为类为类对话对话框框. v 2) 在在“另存另存为类为类对话对话框中框中选择选择“当前表当前表单单或或“选选定控件。定控件。在在“类类名框中名框中输输入入类类的名称的名称,在在“文件框中文件框中输输入保存入保存类类的文的文件名件名(类库类库名名)。 17w用命令方式创建类用命令方式创建类w 命令格式:命令格式:create class create class w 或或 create class create class of of w 通过编程创建类通过编程创建类w define class define class as as w功能:创建一个新类,以功能:创建一个新类,

16、以 为基类,以为基类,以 为名为名v 创建自定义类创建自定义类(P252)18v 关于自定义类的几点说明关于自定义类的几点说明w 一个类库中可容纳多个类一个类库中可容纳多个类w 创建的类可以由基类派生,也可由用户自己的类派生创建的类可以由基类派生,也可由用户自己的类派生w 如新类是基于容器类的,可象设计表单一样设计新类如新类是基于容器类的,可象设计表单一样设计新类v 将将类类添加到控件工具添加到控件工具栏栏v 表表单单控件工具控件工具栏栏查查看看类类添加添加v 类类的的编辑编辑与与删删除除remove class remove class of of 191. 拖拖动动控件到表控件到表单单,创

17、创建相建相应应的控件的控件对对象。象。2. 由由类创类创建建对对象象 格式格式: =createobject() 功能功能:将以将以为为名的名的类类定定义义成以成以为为名的名的对对象象. 6.2.5 对象的建立和使用对象的建立和使用例:例:创建一个按建一个按钮标签对象象labelTest.labelTest. (1) SET CLASSLIB TO myclass ADDITIVE (1) SET CLASSLIB TO myclass ADDITIVE 指明要指明要创建的建的对象保存在哪个象保存在哪个类库(.vcx .vcx 文件中。文件中。关关键字字 ADDITIVE ADDITIVE 规

18、定在打开指定定在打开指定类库的同的同时并不关并不关闭其他早其他早先已打开的先已打开的类库。 (2) labelTest = CREATEOBJECT(“mylabel) (2) labelTest = CREATEOBJECT(“mylabel) 在此代在此代码中假中假设保存在保存在类库中的表中的表单类名称名称为mylabelmylabel。 对象由类来定义对象由类来定义, ,只有具体的对象才能实现类的事件或只有具体的对象才能实现类的事件或方法的操作方法的操作.createobject().createobject()函数可将类定义成对象函数可将类定义成对象. . 206.3 用表单设计器设计

19、表单用表单设计器设计表单6.3.1 基本步基本步骤骤1表表单设计单设计器窗口添加控件器窗口添加控件对对象,操作控象,操作控件件2在属性窗口在属性窗口设设置置对对象属性象属性 3. 控件布局控件布局设设置置Tab键键次序次序 编编写事件代写事件代码码或方法程序或方法程序 可在可在可在可在设设置框中直接置框中直接置框中直接置框中直接输输入入入入 从系从系从系从系统统提供的一提供的一提供的一提供的一组值组值中指定中指定中指定中指定 需指定文件名或需指定文件名或需指定文件名或需指定文件名或对话对话框中指定框中指定框中指定框中指定时时,后有,后有,后有,后有 默默默默认值认值的的的的设设置置置置 属性属

20、性属性属性设为设为空空空空 “ “工具菜工具菜工具菜工具菜单单单单中的中的中的中的“ “选项选项选项选项命令,翻开命令,翻开命令,翻开命令,翻开“ “选项选项选项选项对话对话对话对话框。框。框。框。 选择选择选择选择“ “表表表表单单单单选项选项选项选项卡。卡。卡。卡。 在在在在“Tab“Tab键键键键次序下拉列表框中次序下拉列表框中次序下拉列表框中次序下拉列表框中选择选择选择选择“ “交互或交互或交互或交互或“ “按列表按列表按列表按列表” ” 控件的基本操作控件的基本操作控件的基本操作控件的基本操作 选定控件选定控件选定控件选定控件 移动控件移动控件移动控件移动控件 调整控件大小调整控件大

21、小调整控件大小调整控件大小 复制控件复制控件复制控件复制控件 删除控件删除控件删除控件删除控件216.3.2 事件事件过过程和方法程序程和方法程序 1. 1.事件事件 事件事件(Event)(Event)是一种由系统预先定义而由用户或系是一种由系统预先定义而由用户或系统引发的动作,作用于对象上。统引发的动作,作用于对象上。 事件过程事件过程(Event Procudure)(Event Procudure) 是为处理特定事件而编写的一段程序。是为处理特定事件而编写的一段程序。 当事件由用户触发当事件由用户触发( (如如C1ick)C1ick)或由系统触发或由系统触发( (如如Load)Load

22、)时,对象就会对该事件作出响应时,对象就会对该事件作出响应(Respond)(Respond)。响应某。响应某个事件后所执行的程序代码就是事件过程。个事件后所执行的程序代码就是事件过程。 n VFP系系统统中,事件集是固定的中,事件集是固定的,用用户户不能定不能定义义新的事件,新的事件,对对象可以响象可以响应应50多种事件。多种事件。22VFPVFP基类中基类中, ,最小事件集最小事件集( (即所有对象都包含这些事件即所有对象都包含这些事件) )事件事件说明说明Init当对象生成时引发当对象生成时引发Destory当对象从内存中释放时引发当对象从内存中释放时引发Error当方法或事件代码出现运

23、行错误时引发当方法或事件代码出现运行错误时引发23VFPVFP中的表单常用事件中的表单常用事件(1) Click(1) Click事件事件 单击鼠标左键时引发。单击鼠标左键时引发。(2) DblClick(2) DblClick事件事件 用鼠标双击对象时引发。用鼠标双击对象时引发。(3) Rightclick(3) Rightclick事件事件 鼠标右键单击对象时引发。鼠标右键单击对象时引发。(4) Load(4) Load事件事件 在表单对象建立之前引发在表单对象建立之前引发, ,分配存储空间。分配存储空间。(5) Init(5) Init事件事件 在表单建立时引发在表单建立时引发, ,表单

24、对象初始化。表单对象初始化。(6) Activate(6) Activate事件事件 表单在内存中已建立,再激活表单。表单在内存中已建立,再激活表单。(7) Destroy(7) Destroy事件事件 在对象释放时引发。在对象释放时引发。 (8) Unload(8) Unload事件事件 在表单对象从内存释放时引发,是表单对象释放时最后一在表单对象从内存释放时引发,是表单对象释放时最后一个引发的事件。个引发的事件。24例例6-1 6-1 建立表单,为表单设置建立表单,为表单设置LoadLoad等事件的方法程序,然后等事件的方法程序,然后 运行表单,观察各个事件发生的先后顺序。运行表单,观察各

25、个事件发生的先后顺序。操作步操作步操作步操作步骤骤如下:如下:如下:如下: 新建一个空白表新建一个空白表新建一个空白表新建一个空白表单单单单 为为为为LoadLoad事件事件事件事件输输输输入方法程序:入方法程序:入方法程序:入方法程序: wait “load” window wait “load” window 为为为为InitInit事件事件事件事件输输输输入方法程序:入方法程序:入方法程序:入方法程序:wait “init” windowwait “init” window 为为为为ActivateActivate事件事件事件事件输输输输入方法程序:入方法程序:入方法程序:入方法程序:w

26、ait “activate” wait “activate” windowwindow 为为为为DestoryDestory事件事件事件事件输输输输入方法:入方法:入方法:入方法:wait “destory” windowwait “destory” window 为为为为UnloadUnload事件事件事件事件输输输输入方法程序:入方法程序:入方法程序:入方法程序:wait “unload” windowwait “unload” window 保存并运行表保存并运行表保存并运行表保存并运行表单单单单( (屏幕右上角出屏幕右上角出屏幕右上角出屏幕右上角出现现现现提示窗口,提示窗口,提示窗口,

27、提示窗口,单击单击单击单击鼠鼠鼠鼠标标标标观观观观察窗口的察窗口的察窗口的察窗口的变变变变化。化。化。化。单击单击单击单击表表表表单单单单的关的关的关的关闭闭闭闭按按按按纽纽纽纽或关或关或关或关闭闭闭闭表表表表单时单时单时单时,提示窗口将提示窗口将提示窗口将提示窗口将继续变继续变继续变继续变化。化。化。化。) )25ClickClick:鼠标左键单击对象时发生的事件。:鼠标左键单击对象时发生的事件。DbclickDbclick: 鼠标左键双击对象时发生的事件。鼠标左键双击对象时发生的事件。RightclickRightclick:鼠标右键单击对象时发生的事件。:鼠标右键单击对象时发生的事件。G

28、otFocusGotFocus:对象接收到焦点时发生的事件。:对象接收到焦点时发生的事件。LostFocusLostFocus:对象失去焦点时发生的事件。:对象失去焦点时发生的事件。KeyPressKeyPress:当用户在对象上按下或释放键时发生的事件。:当用户在对象上按下或释放键时发生的事件。InteractiveChangeInteractiveChange:以交互方式改变对象的值时发生的事件。:以交互方式改变对象的值时发生的事件。ProgrammaticChangeProgrammaticChange:以编程方式改变对象的值时发生的事件。:以编程方式改变对象的值时发生的事件。VFPVF

29、P对象的其他常用事件对象的其他常用事件26 方法方法(Method):(Method):附属于附属于对对象的行象的行为为和和动动作作, ,也称方法程序。也称方法程序。 方法属于方法属于对对象的内部函数象的内部函数, , 用于完成某种特定的功能而不一用于完成某种特定的功能而不一定响定响应应某一事件,如添加某一事件,如添加对对象象(Addobject)(Addobject)方法、方法、绘绘制矩形制矩形(Box)(Box)方法、方法、释释放表放表单单(Release)(Release)方法等。方法也被方法等。方法也被“封装封装在在对对象中象中, ,不同的不同的对对象具有不同的内部方法。象具有不同的内

30、部方法。 VFP VFP提供了百余个内部方法供不同的提供了百余个内部方法供不同的对对象象调调用。与事件用。与事件过过程程不同的是,根据需要可由用不同的是,根据需要可由用户户自行建立新方法。自行建立新方法。 2. 2.方法程序方法程序27 事件过程由事件的激发而调用其代码,也可以在运行事件过程由事件的激发而调用其代码,也可以在运行中由程序调用其代码,而方法的代码只能在运行中由程序中由程序调用其代码,而方法的代码只能在运行中由程序调用。调用。事件与方法的不同事件与方法的不同 常用的表单方法常用的表单方法Hide方法方法隐隐藏表藏表单单,将表将表单单的的Visible属性属性设设置置为为.F. ;

31、Show方法方法显显示表示表单单,将表将表单单的的Visible属性属性设设置置为为.T. ; Release方法方法将表将表单单从内存中从内存中释释放。放。Refresh方法方法刷新表刷新表单单。281. 引用对象时有两种方法引用对象时有两种方法 绝对引用:从最高容器开始逐层向下直到某个对象为止绝对引用:从最高容器开始逐层向下直到某个对象为止. 相对引用:从正在为编写事件代码的对象出发,通过逐层相对引用:从正在为编写事件代码的对象出发,通过逐层向高一层或低一层直到另一对象的引用。向高一层或低一层直到另一对象的引用。6.3.3 设设置引用置引用对对象的属性和其象的属性和其调调用方法用方法2.

32、设设置引用置引用对对象的属性和方法象的属性和方法 引用引用对对象属性的象属性的设设置置 引用引用对对象象.属性属性=属性属性值值 当一个当一个对对象的多个属性要象的多个属性要设设置置时时,常用以下格式:,常用以下格式: With Endwith 使用相对引用常用到表中所列属性或关键字使用相对引用常用到表中所列属性或关键字属性或关键字属性或关键字当前对象的直接容器对象当前对象的直接容器对象ParentThis当前对象当前对象ThisForm当前对象所在的表单当前对象所在的表单ThisFormSet当前对象所在的表单集当前对象所在的表单集援用援用29调用对象方法的格式:调用对象方法的格式: 引用对

33、象引用对象. 方法名方法名 (参数表参数表)例如:例如: Thisform.show(1) & 显示表单显示表单FORM1 Thisform.cls & 表单表单FORM1清屏清屏3调用对象的方法调用对象的方法4执执行行对对象的事件象的事件 引用引用对对象象. 事件名事件名 (参数表参数表)例如:例如:Thisform.activate & Thisform的激活事件的激活事件comm1.Click & COMM1的的单击单击事件事件30例例6-2 如如Form1中中有有一一个个命命令令按按钮钮组组commandgroup1,该该命令按命令按 钮组有两个命令按钮钮组有两个命令按钮:comman

34、d1 和和command2。1) 1) 在命令按在命令按钮钮command1command1的的单击单击事件代事件代码码中修改中修改该该按按钮钮的的标题为标题为“确定确定”。2) 2) 在命令按在命令按钮钮command1command1的事件代的事件代码码中修改中修改命令按命令按钮钮command2command2的的标题为标题为“ “取消取消” ”。3) 3) 在命令按在命令按钮钮command1command1的事件代的事件代码码中修改表中修改表单单的的标题标题为为“测试测试窗口窗口”。this.caption=”this.caption=”确定确定” thisform.Commandg

35、roup1mand2.caption=“ thisform.Commandgroup1mand2.caption=“取消取消”或或 this.parentmand2.caption= this.parentmand2.caption=取消取消 thisformmand2. caption=“ thisformmand2. caption=“取消取消” X” X This.Parent.parent.Caption=” This.Parent.parent.Caption=”测试测试窗口窗口”或或 thisform.caption=” thisform.caption=”测试测试窗口窗口”31例

36、例6-3 设设计计一一个个只只含含文文本本框框控控件件的的表表单单(如如P187图图6.17所所示示),要要 求逐次单击文本框的内部能轮流显示当前的日期与时间。求逐次单击文本框的内部能轮流显示当前的日期与时间。步步骤:1.1.创建一个空白表建一个空白表单对象象, ,并并设置置该对象的象的 caption caption属性属性为“日期和日期和时间”; 2. 2.添加文本框控件添加文本框控件对象;象; 3. 3.设置文本框的属性置文本框的属性( (字体,布局等字体,布局等) ); 4. 4.编写代写代码 在表在表单加加载时定定义公共公共逻辑变量量flag.flag. 在在单击事件事件(click

37、)(click)中中编写代写代码. .32例例6-4 设设计计一一简简单单的的绘绘图图程程序序,要要求求在在表表单单上上拖拖动动时时能能画画线。线。解析:绘画的解析:绘画的3 3个步骤个步骤 1. 1. 在表单上按下鼠标键在表单上按下鼠标键 2. 2. 在按下鼠标键的同时拖动鼠标在按下鼠标键的同时拖动鼠标 3. 3. 释放鼠标,使键弹起释放鼠标,使键弹起对应的事件及其代的事件及其代码:1.1.表表单的的MouseDown()MouseDown()事件代事件代码: ok=.t. ok=.t.2.2.表表单的的MouseMove()MouseMove()事件代事件代码: : 如条件如条件满足,足,

38、则画画线. .3.3.表表单的的MouseUp()MouseUp()事件代事件代码: ok=.f.: ok=.f.4.4.在加在加载表表单时进行画笔的初始化,并定行画笔的初始化,并定义一个公共一个公共逻辑变量,量,使使MouseDown()MouseDown()、MouseMove()MouseMove()、MouseUp()MouseUp()事件都可事件都可访问。 即可设置一逻辑变量即可设置一逻辑变量okok,当在表单上按下鼠标时,当在表单上按下鼠标时ok=.t.ok=.t.,当鼠,当鼠标释放时,使标释放时,使ok=.f. ok=.f. 。当鼠标拖动时检测是否。当鼠标拖动时检测是否ok=.t

39、.ok=.t.是则执行每是则执行每拖动一个像素,画一个点,否则不画;拖动一个像素,画一个点,否则不画;336.3.4 为为表表单单添加新的属性和方法添加新的属性和方法1 1创创建新属性建新属性 步步骤骤:1) 1) 【表【表单单】菜】菜单单中的【新建属性】中的【新建属性】, ,翻开翻开“新建属性新建属性对话对话框。框。2) 2) 在在“称号框中称号框中输输入属性名称入属性名称3) 3) 在在“阐阐明框中明框中输输入新建属性的入新建属性的说说明信息明信息342创创建新方法建新方法 步步骤骤如下:如下:1)【表【表单单】菜】菜单单中【新建方法程序】中【新建方法程序】,翻开翻开“新建方法程序新建方法

40、程序对话对话框。框。2) 在在“称号框中称号框中输输入方法名。入方法名。3) 有有选择选择地在地在“阐阐明框中明框中输输入新建方法的入新建方法的说说明信息。明信息。6.3.4 为为表表单单添加新的属性和方法添加新的属性和方法356.3.5 运行表运行表单单1在在设计时设计时运行表运行表单单 项项目管理器中,目管理器中,选择选择表表单单,单击单击“运运转转按按钮钮。 表表单设计单设计器中,【表器中,【表单单】菜】菜单单中【中【执执行表行表单单】命令,或】命令,或常用工具常用工具栏栏上的上的“运运转转按按钮钮。 【程序】菜【程序】菜单单中【运中【运转转】命令,翻开】命令,翻开“运运转转对话对话框,

41、然框,然后后选择选择表表单单,单击单击“运运转转按按钮钮。 命令窗口命令窗口输输入命令:入命令:DO FORM 。 362 2在程序中调用表单在程序中调用表单命命令令:DO DO FORM FORM NAMENAMELINKED LINKED WITHWITH,TO,TONOSHOWNOSHOWNAMENAME:如如有有NAMENAME子子句句, ,系系统建建立立指指定定名名字字的的变量量,并并使使它它指指向向表表单对象象。否否则,系系统建建立立与与表表单文文件件名名相相同同的的变量,并使它指向表量,并使它指向表单对象。象。LINKED: LINKED: 如如有有LINKEDLINKED关关键

42、字字, ,表表单和和表表单对象象变量量将将链接接起起来来, ,这时, ,表表单对象象将将随随指指向向它它的的变量量的的清清除除而而关关闭( (释放放),),否否则, ,即即使使变量量已已经清清除除( (如如超超出出作作用用域域, ,用用RELEASERELEASE命命令令清清除除),),表表单对象象依依然然存存在在。但但不不管管有有无无LINKEDLINKED关关键字字,指指向向表表单对象的象的变量不会随表量不会随表单的关的关闭而清除。而清除。TO TO :用于从模式表:用于从模式表单返回返回值。WITH WITH :用于向表:用于向表单传递参数。参数。NOSHOWNOSHOW:如如包包含含N

43、OSHOW,NOSHOW,表表单运运行行时将将不不显示示, ,直直到到将将表表单的的VisibleVisible属性属性设置置为.T.T.,或,或调用表用表单的的ShowShow方法。方法。376.3.6 表表单单与其它程序模与其它程序模块间块间的通信的通信 1 1将参数传递到表单将参数传递到表单 要将参数传递到表单,可按如下操作:要将参数传递到表单,可按如下操作: 1) 1)在表单的在表单的INITINIT事件中,用事件中,用PARAMETERSPARAMETERS定义形参:定义形参: PARAMETERS param1,param2 PARAMETERS param1,param2 2)2

44、)在在表表单单的的INITINIT事事件件中中可可直直接接访访问问参参数数,如如在在表表单单的的其其它它方方法法或或事事件件中中需需使使用用该该参参数数,必必需需在在表表单单的的INITINIT事事件件中中将将参参数保存到表单的属性或变量中。数保存到表单的属性或变量中。 3)3)运运行行表表单单时时,使使用用带带WITHWITH子子句句的的DO DO FORMFORM命命令令,系系统统会会将将WITHWITH子子句句的的实实参参值值传传递递到到INITINIT事事件件代代码码的的PARAMETERSPARAMETERS子子句句中中的各形参。的各形参。382 2从表单返回值从表单返回值 只有模式

45、表单可返回值。要从表单返回值可按如下操作:只有模式表单可返回值。要从表单返回值可按如下操作: 1) 1)将表单的将表单的WINDOWTYPEWINDOWTYPE属性设置为属性设置为1,1,使表单成为模式表单,使表单成为模式表单, 2)2)在在表表单单的的UNLOADUNLOAD事事件件代代码码中中, ,包包含含一一个个带带返返回回值值的的RETURNRETURN命令。命令。 3) 3)运行表单时,在运行表单时,在DO FORMDO FORM命令中包含命令中包含TOTO关键字。关键字。 6.3.6 表表单单与其它程序模与其它程序模块间块间的通信的通信 3 3直接直接访问访问表表单对单对象象 表表

46、单单运运行行后后,在在其其释释放放前前可可通通过过指指向向表表单单的的变变量量访访问问表表单对单对象及表象及表单单中所有控件中所有控件对对象。象。 396.3.7 使用表使用表单单集集扩扩充表充表单单 1 1创创始表始表单单集集 表表单单集集是是一一个个包包含含有有一一个个或或多多个个表表单单的的容容器器。可可在在“表表单单设设计计器器中中创创建建表表单单集集,若若要要创创建建表表单单集集,在在系系统统菜菜单单中中选择选择【表【表单单】| |【创创建表建表单单集】命令。集】命令。2 2添加和添加和删删除表除表单单添加:在系添加:在系统统菜菜单单中中选择选择【表【表单单】| |【添加新表【添加新表单单】命令。】命令。删删除:除:(1 1 在在“属性窗口的属性窗口的对对象列表框中,象列表框中,选择选择要要删删除的表除的表单单。(2 2 在系在系统统菜菜单单中中选择选择【表【表单单】| |【移除表【移除表单单】命令。】命令。如如果果表表单单集集只只有有一一个个表表单单,可可删删除除表表单单集集而而只只剩剩下下表表单单,方方法:在系法:在系统统菜菜单单中中选择选择【表【表单单】| |【移除表【移除表单单集】命令。集】命令。

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

最新文档


当前位置:首页 > 资格认证/考试 > 自考

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