好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

VFP表单设计基础ppt课件.ppt

39页
  • 卖家[上传人]:壹****1
  • 文档编号:592586227
  • 上传时间:2024-09-21
  • 文档格式:PPT
  • 文档大小:708KB
  • / 39 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 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应用程序的窗口应用程序的窗口 表单的基本操作过程:表单的基本操作过程: 创建表单创建表单 用表单设计器修改或新建表单用表单设计器修改或新建表单 保存表单保存表单 运行表单运行表单 36.1.1 使用表单设计器创建或修改表单使用表单设计器创建或修改表单 1.启动表单设计器.启动表单设计器 在命令窗口输入命令:在命令窗口输入命令: CREATE FORM [表单名表单名] (创建创建) MODIFY FORM [表单名表单名] (修正修正) 42.表.表单设计单设计器介器介绍绍 “表表单设计单设计器〞窗口包含正在器〞窗口包含正在设计设计的表的表单单,表表单单窗口只能在窗口只能在“表表单设计单设计器〞窗口内移器〞窗口内移动动。

      用用户户可在表可在表单单窗口中可窗口中可视视化化地添加和修改控件、改地添加和修改控件、改变变控件布局以新建方式启控件布局以新建方式启动动表表单单设计设计器器时时,系系统统将默将默认为认为用用户创户创建一个空白表建一个空白表单单 6.1.1 使用表单设计器创建或修改表单使用表单设计器创建或修改表单“对象〞下拉列表框图对象〞下拉列表框图(P182)页框选项卡页框选项卡属性设置框属性设置框(P183)(P183) 53.数据.数据环环境境 “数据数据环环境〞指表境〞指表单单(或或报报表表)所用的数据源所用的数据源,包括表、包括表、视视图图和它和它们们之之间间的关系表的关系表单设计单设计器器环环境下境下,单击单击“表表单设计单设计器〞工具器〞工具栏栏上的上的“数据数据环环境〞按境〞按钮钮,或或选择选择“显显示示”—“数据数据环环境〞命令境〞命令,即可打开即可打开“数据数据环环境境设计设计器〞窗口器〞窗口,此此时时,系系统统菜菜单单栏栏上将出上将出现现“数据数据环环境〞菜境〞菜单单6.1.1 使用表单设计器创建或修改表单使用表单设计器创建或修改表单 66.1.1 使用表单设计器创建或修改表单使用表单设计器创建或修改表单4.快速表.快速表单单 能在表能在表单单窗口窗口为为当前表当前表单单迅速迅速产产生生选选定的字段定的字段变变量,量,调调用用“表表单单生成器〞来完成。

      生成器〞来完成调用表用表单生成器的方法有三种:生成器的方法有三种:系系统菜菜单中【表中【表单】】| |【快速表【快速表单】命令表表单设计器〞工具器〞工具栏中的中的““表表单生成器〞按生成器〞按钮右右击表表单窗口,在窗口,在弹出的快捷菜出的快捷菜单中中选择““生成器〞命令生成器〞命令 76.1.2 保存后运行表单保存后运行表单v在命令窗口输入命令:在命令窗口输入命令:v DO FORM < DO FORM <表单文件名表单文件名> > 8面向对象程序设计:面向对象程序设计:思想:将问题划分为类,由类定义的对象之间互发消息来完成功能思想:将问题划分为类,由类定义的对象之间互发消息来完成功能主要结构特点:主要结构特点: 1.程序一般由类的定义和类的使用两部分组成,在程序中定义各对象并程序一般由类的定义和类的使用两部分组成,在程序中定义各对象并规定它们之间的传递消息的规律;规定它们之间的传递消息的规律; 2.程序中的一切操作都是通过向对象发送消息来实现的,对象接收到消程序中的一切操作都是通过向对象发送消息来实现的,对象接收到消息后,启动有关方法来完成相应的操作息后,启动有关方法来完成相应的操作。

      重点重点:数据6.2 面向对象程序设计基础面向对象程序设计基础 面向过程程序设计面向过程程序设计(结构化程序设计结构化程序设计)::思想:核心是功能分解将问题先按解决流程分解成若干个模思想:核心是功能分解将问题先按解决流程分解成若干个模块功能块;再设计数据结构;最后编写函数来对数据进行操作块功能块;再设计数据结构;最后编写函数来对数据进行操作重点在过程,当数据结构发生改变时,所有代码都需改变重点在过程,当数据结构发生改变时,所有代码都需改变重点重点:过程 91 1.对象.对象 客观世界的任何事物都可以被看成是对象,对象是客观世界的任何事物都可以被看成是对象,对象是反映客观事物属性及其行为特征的描述反映客观事物属性及其行为特征的描述, ,是具体的是具体的对象属性:用来表示对象的状态,用变量来描述对象属性:用来表示对象的状态,用变量来描述对象方法:描述对象行为的过程,用过程或函数实现对象方法:描述对象行为的过程,用过程或函数实现6.2.1 6.2.1 对象对象 106.2.2 6.2.2 类类(P250)(P250)n 类类:对一类相似对象的性质描述,这些对象具有相对一类相似对象的性质描述,这些对象具有相同种类的属性以及方法。

      同种类的属性以及方法n 相当于相当于C语言中的结构体,但除了描述变量成员语言中的结构体,但除了描述变量成员之外,还要描述对象的行为特征,即函数之外,还要描述对象的行为特征,即函数n 对对象和象和类类的区分的区分: :n 类类是是对对象的模板象的模板, ,规规定定对对象的属性象的属性, ,事件和方法程序事件和方法程序n 对对象通象通过类过类来来产产生生, ,通通过类过类来定来定义对义对象n 对对象是象是类类的的实实例任何一个例任何一个对对象都是某个象都是某个类类的一个的一个实实例n 类类抽象抽象, ,不分配存不分配存储储空空间间; ;对对象具体象具体, ,占用内存空占用内存空间间n 对对象属性象属性访问访问以及以及对对象方法象方法调调用的基本格式:用的基本格式:n< <对对象引用象引用>.<>.<对对象属性象属性> >n< <对对象引用象引用>.<>.<对对象方法象方法>[(>[(参数列表参数列表)])] 11 类具有继承性、封装性和多态性三种基本特性类具有继承性、封装性和多态性三种基本特性 1) 继承性:指通过继承关系利用已有的类构造新类继承性:指通过继承关系利用已有的类构造新类。

      在面向对象的方法里在面向对象的方法里,继承是指在基于父类继承是指在基于父类(现有的类现有的类)创建创建子类子类(新类新类)时时,子类继承了父类的方法和属性子类继承了父类的方法和属性,可以为子类添可以为子类添加新方法和属性加新方法和属性 2) 封装性封装性 封装是一种信息封装是一种信息隐隐藏技藏技术术,,对对象内部象内部对对用用户户是是隐隐藏的,藏的,不可直接不可直接访问访问;用;用户户只能只能见见到到对对象封装界面上的信息,象封装界面上的信息,通通过对过对象的外部接口象的外部接口访问对访问对象用户户向向对对象象发发送消息,送消息,对对象根据收到的消息象根据收到的消息调调用内部方法作出响用内部方法作出响应应1 1.类的特性.类的特性3) 多多态态性性 所所谓谓多多态态即一个名即一个名词词可具有多种可具有多种语义语义,多个函,多个函数可具有相同的函数名,但数可具有相同的函数名,但实现实现方法不同方法不同 12 VFP下,下,进进行面向行面向对对象的程序象的程序设计设计或或创创建建应应用程序,用程序,要用到要用到VFP系系统统提供的基提供的基础类础类,即,即VFP基基类类,它是系它是系统统本本身内含的,并不存放在身内含的,并不存放在类库类库中。

      基中基类类是是VFP为为用用户预户预先先定定义义的的类类,用,用户户可用基可用基类类来来创创建新建新类类,此,此时时基基类类是父是父类类,,新新类类是子是子类类2 2..VFPVFP中的类中的类 Visual FoxproVisual Foxpro基类列表基类列表CommandButton类名类名含义含义类名类名含义含义ActiveDoc活动文档活动文档Label标签标签CheckBox复选框复选框Line线条线条Column(表格〕列(表格〕列Listbox列表框列表框ComboBox组合框组合框OlecontrolOLE容器控件容器控件OleboundcontrolOLE绑定控件绑定控件CommandGroup命令按钮组命令按钮组OptionButton选项按钮选项按钮Container容器容器Optiongroup选项按钮组选项按钮组Contorl控件控件Page页页Custom定制定制PageFrame页框页框EditBox编辑框编辑框ProjectHook项目挂钩项目挂钩Form表单表单Separator分隔符分隔符FormSet表单集表单集Shape图形图形Grid 表格表格Spinner微调控件微调控件Header(列〕标头(列〕标头TextBox文本框文本框HyperLink超级链接超级链接Timer定时器定时器Image图象图象ToolBar工具栏工具栏命令按钮命令按钮 14 156.2.3 6.2.3 容器类和控件类容器类和控件类VFPVFP中的类分为两种:容器类中的类分为两种:容器类(container classes)(container classes)与控件类与控件类(control classes),(control classes),可分别生成容器可分别生成容器( (对象对象) )和控件和控件( (对象对象) )。

      n 容器:可容容器:可容纳纳其他其他对对象,并允象,并允许访问许访问所包含所包含的的对对象n 容器容器( (如表如表单单) )自身是一个自身是一个对对象,可以把按象,可以把按钮钮、、编辑编辑框、文本框等包含在其中框、文本框等包含在其中 常用容器常用容器及及对对象象见见P181-P181-表表6.26.2n 控件:不能容控件:不能容纳纳其他其他对对象当将一个控件象当将一个控件对对象放入容器中象放入容器中, 编编程程时时引用引用该对该对象象时时有两种方法有两种方法 166.2.4 自定义类的创建与使用自定义类的创建与使用 v 将表将表单单和控件保存和控件保存为类为类v 1)【文件】【文件】|【另存【另存为类为类】命令】命令,翻开翻开“另存另存为类为类〞〞对话对话框框. v 2) 在在“另存另存为类为类〞〞对话对话框中框中选择选择“当前表当前表单单〞或〞或“选选定控件在在“类类名〞框中名〞框中输输入入类类的名称的名称,在在“文件〞框中文件〞框中输输入保存入保存类类的文的文件名件名(类库类库名名) 17w用命令方式创建类用命令方式创建类w 命令格式:命令格式:create class >w 或或 create class < create class <类名类名> of <> of <类库名类库名> >w 通过编程创建类通过编程创建类w define class < define class <类名类名> as <> as <父类名父类名> >w功能:创建一个新类,以功能:创建一个新类,以< <父类名父类名> >为基类,以为基类,以< <类名类名> >为名为名v 创建自定义类创建自定义类(P252) 18v 关于自定义类的几点说明关于自定义类的几点说明w 一个类库中可容纳多个类一个类库中可容纳多个类w 创建的类可以由基类派生,也可由用户自己的类派生创建的类可以由基类派生,也可由用户自己的类派生w 如新类是基于容器类的,可象设计表单一样设计新类如新类是基于容器类的,可象设计表单一样设计新类v 将将类类添加到控件工具添加到控件工具栏栏v 表表单单控件工具控件工具栏栏—查查看看类类—添加添加v 类类的的编辑编辑与与删删除除remove class of <> of <类库类库名名> > 191. 拖拖动动控件到表控件到表单单,,创创建相建相应应的控件的控件对对象。

      象2. 由由类创类创建建对对象象 格式格式: <对对象名象名>=createobject(<类类名名>) 功能功能:将以将以<类类名名>为为名的名的类类定定义义成以成以<对对象名象名>为为名的名的对对象象. 6.2.5 对象的建立和使用对象的建立和使用例:例:创建一个按建一个按钮标签对象象labelTest.labelTest. (1) SET CLASSLIB TO myclass ADDITIVE (1) SET CLASSLIB TO myclass ADDITIVE 指明要指明要创建的建的对象保存在哪个象保存在哪个类库((.vcx .vcx 文件〕中文件〕中关关键字字 ADDITIVE ADDITIVE 规定在打开指定定在打开指定类库的同的同时并不关并不关闭其他早其他早先已打开的先已打开的类库 (2) labelTest = CREATEOBJECT(“mylabel") (2) labelTest = CREATEOBJECT(“mylabel") 在此代在此代码中假中假设保存在保存在类库中的表中的表单类名称名称为mylabelmylabel。

      对象由类来定义对象由类来定义, ,只有具体的对象才能实现类的事件或只有具体的对象才能实现类的事件或方法的操作方法的操作.createobject().createobject()函数可将类定义成对象函数可将类定义成对象. . 206.3 用表单设计器设计表单用表单设计器设计表单6.3.1 基本步基本步骤骤1.表.表单设计单设计器窗口添加控件器窗口添加控件对对象,操作控象,操作控件件2.在属性窗口.在属性窗口设设置置对对象属性象属性 3. 控件布局控件布局设设置置Tab键键次序次序 编编写事件代写事件代码码或方法程序或方法程序» »可在可在可在可在设设置框中直接置框中直接置框中直接置框中直接输输入入入入» »从系从系从系从系统统提供的一提供的一提供的一提供的一组值组值中指定中指定中指定中指定» »需指定文件名或需指定文件名或需指定文件名或需指定文件名或对话对话框中指定框中指定框中指定框中指定时时,后有,后有,后有,后有……» »默默默默认值认值的的的的设设置置置置» »属性属性属性属性设为设为空空空空①①①① “ “工具〞菜工具〞菜工具〞菜工具〞菜单单单单中的中的中的中的“ “选项选项选项选项〞命令,翻开〞命令,翻开〞命令,翻开〞命令,翻开“ “选项选项选项选项〞〞〞〞对话对话对话对话框。

      框②②②② 选择选择选择选择“ “表表表表单单单单〞〞〞〞选项选项选项选项卡③③③③ 在在在在“Tab“Tab键键键键次序〞下拉列表框中次序〞下拉列表框中次序〞下拉列表框中次序〞下拉列表框中选择选择选择选择“ “交互〞或交互〞或交互〞或交互〞或“ “按列表按列表按列表按列表” ” 控件的基本操作控件的基本操作控件的基本操作控件的基本操作①①①① 选定控件选定控件选定控件选定控件②②②② 移动控件移动控件移动控件移动控件③③③③ 调整控件大小调整控件大小调整控件大小调整控件大小④④④④ 复制控件复制控件复制控件复制控件⑤⑤⑤⑤ 删除控件删除控件删除控件删除控件 216.3.2 事件事件过过程和方法程序程和方法程序 1. 1.事件事件 事件事件(Event)(Event)是一种由系统预先定义而由用户或系是一种由系统预先定义而由用户或系统引发的动作,作用于对象上统引发的动作,作用于对象上 事件过程事件过程(Event Procudure)(Event Procudure) 是为处理特定事件而编写的一段程序是为处理特定事件而编写的一段程序 当事件由用户触发当事件由用户触发( (如如C1ick)C1ick)或由系统触发或由系统触发( (如如Load)Load)时,对象就会对该事件作出响应时,对象就会对该事件作出响应(Respond)(Respond)。

      响应某响应某个事件后所执行的程序代码就是事件过程个事件后所执行的程序代码就是事件过程 n VFP系系统统中,事件集是固定的中,事件集是固定的,用用户户不能定不能定义义新的事件,新的事件,对对象可以响象可以响应应50多种事件多种事件 22VFPVFP基类中基类中, ,最小事件集最小事件集( (即所有对象都包含这些事件即所有对象都包含这些事件) )事件事件说明说明Init当对象生成时引发当对象生成时引发Destory当对象从内存中释放时引发当对象从内存中释放时引发Error当方法或事件代码出现运行错误时引发当方法或事件代码出现运行错误时引发 23VFPVFP中的表单常用事件中的表单常用事件(1) Click(1) Click事件事件 单击鼠标左键时引发单击鼠标左键时引发2) DblClick(2) DblClick事件事件 用鼠标双击对象时引发用鼠标双击对象时引发3) Rightclick(3) Rightclick事件事件 鼠标右键单击对象时引发鼠标右键单击对象时引发4) Load(4) Load事件事件 在表单对象建立之前引发在表单对象建立之前引发, ,分配存储空间。

      分配存储空间5) Init(5) Init事件事件 在表单建立时引发在表单建立时引发, ,表单对象初始化表单对象初始化6) Activate(6) Activate事件事件 表单在内存中已建立,再激活表单表单在内存中已建立,再激活表单7) Destroy(7) Destroy事件事件 在对象释放时引发在对象释放时引发 (8) Unload(8) Unload事件事件 在表单对象从内存释放时引发,是表单对象释放时最后一在表单对象从内存释放时引发,是表单对象释放时最后一个引发的事件个引发的事件 24例例6-1 6-1 建立表单,为表单设置建立表单,为表单设置LoadLoad等事件的方法程序,然后等事件的方法程序,然后 运行表单,观察各个事件发生的先后顺序运行表单,观察各个事件发生的先后顺序操作步操作步操作步操作步骤骤如下:如下:如下:如下:①①①① 新建一个空白表新建一个空白表新建一个空白表新建一个空白表单单单单②②②② 为为为为LoadLoad事件事件事件事件输输输输入方法程序:入方法程序:入方法程序:入方法程序: wait “load” window wait “load” window③③③③ 为为为为InitInit事件事件事件事件输输输输入方法程序:入方法程序:入方法程序:入方法程序:wait “init” windowwait “init” window④④④④ 为为为为ActivateActivate事件事件事件事件输输输输入方法程序:入方法程序:入方法程序:入方法程序:wait “activate” wait “activate” windowwindow⑤⑤⑤⑤ 为为为为DestoryDestory事件事件事件事件输输输输入方法:入方法:入方法:入方法:wait “destory” windowwait “destory” window⑥⑥⑥⑥ 为为为为UnloadUnload事件事件事件事件输输输输入方法程序:入方法程序:入方法程序:入方法程序:wait “unload” windowwait “unload” window⑦⑦⑦⑦ 保存并运行表保存并运行表保存并运行表保存并运行表单单单单( (屏幕右上角出屏幕右上角出屏幕右上角出屏幕右上角出现现现现提示窗口,提示窗口,提示窗口,提示窗口,单击单击单击单击鼠鼠鼠鼠标标标标观观观观察窗口的察窗口的察窗口的察窗口的变变变变化。

      化单击单击单击单击表表表表单单单单的关的关的关的关闭闭闭闭按按按按纽纽纽纽或关或关或关或关闭闭闭闭表表表表单时单时单时单时,,,,提示窗口将提示窗口将提示窗口将提示窗口将继续变继续变继续变继续变化) ) 25ClickClick:鼠标左键单击对象时发生的事件鼠标左键单击对象时发生的事件DbclickDbclick:: 鼠标左键双击对象时发生的事件鼠标左键双击对象时发生的事件RightclickRightclick:鼠标右键单击对象时发生的事件鼠标右键单击对象时发生的事件GotFocusGotFocus:对象接收到焦点时发生的事件对象接收到焦点时发生的事件LostFocusLostFocus:对象失去焦点时发生的事件对象失去焦点时发生的事件KeyPressKeyPress:当用户在对象上按下或释放键时发生的事件当用户在对象上按下或释放键时发生的事件InteractiveChangeInteractiveChange:以交互方式改变对象的值时发生的事件以交互方式改变对象的值时发生的事件ProgrammaticChangeProgrammaticChange:以编程方式改变对象的值时发生的事件。

      以编程方式改变对象的值时发生的事件VFPVFP对象的其他常用事件对象的其他常用事件 26 方法方法(Method):(Method):附属于附属于对对象的行象的行为为和和动动作作, ,也称方法程序也称方法程序 方法属于方法属于对对象的内部函数象的内部函数, , 用于完成某种特定的功能而不一用于完成某种特定的功能而不一定响定响应应某一事件,如添加某一事件,如添加对对象象(Addobject)(Addobject)方法、方法、绘绘制矩形制矩形(Box)(Box)方法、方法、释释放表放表单单(Release)(Release)方法等方法也被方法等方法也被““封装〞封装〞在在对对象中象中, ,不同的不同的对对象具有不同的内部方法象具有不同的内部方法 VFP VFP提供了百余个内部方法供不同的提供了百余个内部方法供不同的对对象象调调用与事件用与事件过过程程不同的是,根据需要可由用不同的是,根据需要可由用户户自行建立新方法自行建立新方法 2. 2.方法程序方法程序 27 事件过程由事件的激发而调用其代码,也可以在运行事件过程由事件的激发而调用其代码,也可以在运行中由程序调用其代码,而方法的代码只能在运行中由程序中由程序调用其代码,而方法的代码只能在运行中由程序调用。

      调用事件与方法的不同事件与方法的不同 常用的表单方法常用的表单方法Hide方法方法——隐隐藏表藏表单单,将表将表单单的的Visible属性属性设设置置为为.F. ;; Show方法方法——显显示表示表单单,将表将表单单的的Visible属性属性设设置置为为.T. ;; Release方法方法——将表将表单单从内存中从内存中释释放Refresh方法方法——刷新表刷新表单单 281. 引用对象时有两种方法引用对象时有两种方法 绝对引用:从最高容器开始逐层向下直到某个对象为止绝对引用:从最高容器开始逐层向下直到某个对象为止. 相对引用:从正在为编写事件代码的对象出发,通过逐层相对引用:从正在为编写事件代码的对象出发,通过逐层向高一层或低一层直到另一对象的引用向高一层或低一层直到另一对象的引用6.3.3 设设置引用置引用对对象的属性和其象的属性和其调调用方法用方法2. 设设置引用置引用对对象的属性和方法象的属性和方法 引用引用对对象属性的象属性的设设置置 引用引用对对象象.属性属性=属性属性值值 当一个当一个对对象的多个属性要象的多个属性要设设置置时时,常用以下格式:,常用以下格式: With <引用引用对对象象> <属性属性值值表表> Endwith 使用相对引用常用到表中所列属性或关键字使用相对引用常用到表中所列属性或关键字属性或关键字属性或关键字当前对象的直接容器对象当前对象的直接容器对象ParentThis当前对象当前对象ThisForm当前对象所在的表单当前对象所在的表单ThisFormSet当前对象所在的表单集当前对象所在的表单集援用援用 29调用对象方法的格式:调用对象方法的格式: 引用对象引用对象. 方法名方法名 [([参数表参数表])]例如:例如: Thisform.show(1) && 显示表单显示表单FORM1 Thisform.cls && 表单表单FORM1清屏清屏3.调用对象的方法.调用对象的方法4..执执行行对对象的事件象的事件 引用引用对对象象. 事件名事件名 [([参数表参数表])]例如:例如:Thisform.activate && Thisform的激活事件的激活事件comm1.Click && COMM1的的单击单击事件事件 30例例6-2 如如Form1中中有有一一个个命命令令按按钮钮组组commandgroup1,该该命令按命令按 钮组有两个命令按钮钮组有两个命令按钮:command1 和和command2。

      1) 1) 在命令按在命令按钮钮command1command1的的单击单击事件代事件代码码中修改中修改该该按按钮钮的的标题为标题为““确定确定””2) 2) 在命令按在命令按钮钮command1command1的事件代的事件代码码中修改中修改命令按命令按钮钮command2command2的的标题为标题为“ “取消取消” ”3) 3) 在命令按在命令按钮钮command1command1的事件代的事件代码码中修改表中修改表单单的的标题标题为为““测试测试窗口窗口””this.caption=”this.caption=”确定确定”” thisform.Commandgroup1mand2.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例例6-3 设设计计一一个个只只含含文文本本框框控控件件的的表表单单(如如P187图图6.17所所示示),要要 求逐次单击文本框的内部能轮流显示当前的日期与时间。

      求逐次单击文本框的内部能轮流显示当前的日期与时间步步骤::1.1.创建一个空白表建一个空白表单对象象, ,并并设置置该对象的象的 caption caption属性属性为““日期和日期和时间””;; 2. 2.添加文本框控件添加文本框控件对象;象; 3. 3.设置文本框的属性置文本框的属性( (字体,布局等字体,布局等) );; 4. 4.编写代写代码 在表在表单加加载时定定义公共公共逻辑变量量flag.flag. 在在单击事件事件(click)(click)中中编写代写代码. . 32例例6-4 设设计计一一简简单单的的绘绘图图程程序序,要要求求在在表表单单上上拖拖动动时时能能画画线解析:绘画的解析:绘画的3 3个步骤个步骤 1. 1. 在表单上按下鼠标键在表单上按下鼠标键 2. 2. 在按下鼠标键的同时拖动鼠标在按下鼠标键的同时拖动鼠标 3. 3. 释放鼠标,使键弹起释放鼠标,使键弹起对应的事件及其代的事件及其代码::1.1.表表单的的MouseDown()MouseDown()事件代事件代码:: ok=.t. ok=.t.2.2.表表单的的MouseMove()MouseMove()事件代事件代码: : 如条件如条件满足,足,则画画线. .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.ok=.t.是则执行每是则执行每拖动一个像素,画一个点,否则不画;拖动一个像素,画一个点,否则不画; 336.3.4 为为表表单单添加新的属性和方法添加新的属性和方法1 1..创创建新属性建新属性 步步骤骤::1) 1) 【表【表单单】菜】菜单单中的【新建属性】中的【新建属性】, ,翻开翻开““新建属性〞新建属性〞对话对话框2) 2) 在在““称号〞框中称号〞框中输输入属性名称入属性名称3) 3) 在在““阐阐明〞框中明〞框中输输入新建属性的入新建属性的说说明信息明信息 342..创创建新方法建新方法 步步骤骤如下:如下:1)【表【表单单】菜】菜单单中【新建方法程序】中【新建方法程序】,翻开翻开“新建方法程序新建方法程序〞〞对话对话框2) 在在“称号〞框中称号〞框中输输入方法名入方法名3) 有有选择选择地在地在“阐阐明〞框中明〞框中输输入新建方法的入新建方法的说说明信息。

      明信息6.3.4 为为表表单单添加新的属性和方法添加新的属性和方法 356.3.5 运行表运行表单单1.在.在设计时设计时运行表运行表单单 项项目管理器中,目管理器中,选择选择表表单单,,单击单击“运运转转〞按〞按钮钮 表表单设计单设计器中,【表器中,【表单单】菜】菜单单中【中【执执行表行表单单】命令,或】命令,或常用工具常用工具栏栏上的上的“运运转转〞按〞按钮钮 【程序】菜【程序】菜单单中【运中【运转转】命令,翻开】命令,翻开“运运转转〞〞对话对话框,然框,然后后选择选择表表单单,,单击单击“运运转转〞按〞按钮钮 命令窗口命令窗口输输入命令:入命令:DO FORM <表表单单文件名文件名> 362 2.在程序中调用表单.在程序中调用表单命命令令::DO DO FORM FORM < <表表单文文件件名名> > [NAME<[NAME<变量量>][LINKED] >][LINKED] [WITH<[WITH<实参参1><,1><,实参参2>,…][TO<2>,…][TO<变量量>][NOSHOW]>][NOSHOW][NAME<[NAME<变量量>]:>]:如如有有NAMENAME子子句句, ,系系统建建立立指指定定名名字字的的变量量,,并并使使它它指指向向表表单对象象。

      否否则,,系系统建建立立与与表表单文文件件名名相相同同的的变量,并使它指向表量,并使它指向表单对象[LINKED]: [LINKED]: 如如有有LINKEDLINKED关关键字字, ,表表单和和表表单对象象变量量将将链接接起起来来, ,这时, ,表表单对象象将将随随指指向向它它的的变量量的的清清除除而而关关闭( (释放放),),否否则, ,即即使使变量量已已经清清除除( (如如超超出出作作用用域域, ,用用RELEASERELEASE命命令令清清除除),),表表单对象象依依然然存存在在但但不不管管有有无无LINKEDLINKED关关键字字,,指指向向表表单对象的象的变量不会随表量不会随表单的关的关闭而清除[TO <[TO <变量量>]>]:用于从模式表:用于从模式表单返回返回值[WITH <[WITH <参数列表参数列表>]>]:用于向表:用于向表单传递参数[NOSHOW][NOSHOW]::如如包包含含NOSHOW,NOSHOW,表表单运运行行时将将不不显示示, ,直直到到将将表表单的的VisibleVisible属性属性设置置为.T..T.,或,或调用表用表单的的ShowShow方法。

      方法 376.3.6 表表单单与其它程序模与其它程序模块间块间的通信的通信 1 1.将参数传递到表单.将参数传递到表单 要将参数传递到表单,可按如下操作:要将参数传递到表单,可按如下操作: 1) 1)在表单的在表单的INITINIT事件中,用事件中,用PARAMETERSPARAMETERS定义形参:定义形参: PARAMETERS param1,param2 PARAMETERS param1,param2 2)2)在在表表单单的的INITINIT事事件件中中可可直直接接访访问问参参数数,,如如在在表表单单的的其其它它方方法法或或事事件件中中需需使使用用该该参参数数,,必必需需在在表表单单的的INITINIT事事件件中中将将参参数保存到表单的属性或变量中数保存到表单的属性或变量中 3)3)运运行行表表单单时时,,使使用用带带WITHWITH子子句句的的DO DO FORMFORM命命令令,,系系统统会会将将WITHWITH子子句句的的实实参参值值传传递递到到INITINIT事事件件代代码码的的PARAMETERSPARAMETERS子子句句中中的各形参。

      的各形参 382 2.从表单返回值.从表单返回值 只有模式表单可返回值要从表单返回值可按如下操作:只有模式表单可返回值要从表单返回值可按如下操作: 1) 1)将表单的将表单的WINDOWTYPEWINDOWTYPE属性设置为属性设置为1,1,使表单成为模式表单,使表单成为模式表单, 2)2)在在表表单单的的UNLOADUNLOAD事事件件代代码码中中, ,包包含含一一个个带带返返回回值值的的RETURNRETURN命令 3) 3)运行表单时,在运行表单时,在DO FORMDO FORM命令中包含命令中包含TOTO关键字 6.3.6 表表单单与其它程序模与其它程序模块间块间的通信的通信 3 3.直接.直接访问访问表表单对单对象象 表表单单运运行行后后,,在在其其释释放放前前可可通通过过指指向向表表单单的的变变量量访访问问表表单对单对象及表象及表单单中所有控件中所有控件对对象 396.3.7 使用表使用表单单集集扩扩充表充表单单 1 1..创创始表始表单单集集 表表单单集集是是一一个个包包含含有有一一个个或或多多个个表表单单的的容容器器。

      可可在在““表表单单设设计计器器〞〞中中创创建建表表单单集集,,若若要要创创建建表表单单集集,,在在系系统统菜菜单单中中选择选择【表【表单单】】| |【【创创建表建表单单集】命令集】命令2 2.添加和.添加和删删除表除表单单添加:在系添加:在系统统菜菜单单中中选择选择【表【表单单】】| |【添加新表【添加新表单单】命令删删除:除:((1 1〕 〕在在““属性〞窗口的属性〞窗口的对对象列表框中,象列表框中,选择选择要要删删除的表除的表单单2 2〕 〕在系在系统统菜菜单单中中选择选择【表【表单单】】| |【移除表【移除表单单】命令如如果果表表单单集集只只有有一一个个表表单单,,可可删删除除表表单单集集而而只只剩剩下下表表单单,,方方法:在系法:在系统统菜菜单单中中选择选择【表【表单单】】| |【移除表【移除表单单集】命令集】命令。

      点击阅读更多内容
      相关文档
      安徽省安全员《A证(企业负责人)》冲刺试卷三.docx 2026年房地产经纪人《房地产经纪业务操作》预测试卷三.docx 安徽省安全员《A证(企业负责人)》模拟试卷一.docx 2026年房地产经纪人《房地产交易制度政策》模拟试卷四.docx 安徽省安全员《B证(项目负责人)》冲刺试卷二.docx 2026年房地产经纪人《房地产经纪专业基础》预测试卷四.docx 2026年房地产经纪人《房地产经纪业务操作》考前点题卷一.docx 2023年通信工程师《通信专业实务(传输与接入-无线)》试题真题及答案.docx 安徽省安全员《A证(企业负责人)》试题精选.docx 2026年房地产经纪人《房地产经纪专业基础》预测试卷二.docx 2026年房地产经纪人《房地产经纪业务操作》考前点题卷二.docx 2026年房地产经纪人《房地产经纪职业导论》冲刺试卷三.docx 2026年房地产经纪人《房地产交易制度政策》冲刺试卷三.docx 2026年房地产经纪人《房地产经纪专业基础》考前点题卷二.docx 2026年房地产经纪人《房地产经纪职业导论》冲刺试卷五.docx 2026年房地产经纪人《房地产经纪职业导论》冲刺试卷四.docx 2026年房地产经纪人《房地产交易制度政策》冲刺试卷一.docx 2026年房地产经纪人《房地产交易制度政策》冲刺试卷四.docx 安徽省安全员《B证(项目负责人)》冲刺试卷三.docx 2026年房地产经纪人《房地产经纪业务操作》模拟试卷二.docx
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.