vfp数据库及程序设计第7章 表单设计与应.ppt
《vfp数据库及程序设计第7章 表单设计与应.ppt》由会员分享,可在线阅读,更多相关《vfp数据库及程序设计第7章 表单设计与应.ppt(65页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第7章章 表单设计与应用表单设计与应用 表单是表单是VFPVFP创建应用程序与应用程序界面的重创建应用程序与应用程序界面的重要途径之一,它将可视化操作与面向对象的程序设要途径之一,它将可视化操作与面向对象的程序设计思想有机结合在一起。计思想有机结合在一起。表单设计器是设计表单的工具,它提供了设计表单设计器是设计表单的工具,它提供了设计应用程序界面的各种控件、相应属性、事件。应用程序界面的各种控件、相应属性、事件。它运它运用了面向对象的程序设计和事件驱动机制,使开发用了面向对象的程序设计和事件驱动机制,使开发者能直观,方便,快捷的完成应用程序的设计与界者能直观,方便,快捷的完成应用程序的设计与
2、界面设计的开发工作。面设计的开发工作。7.1 7.1 面向对象程序设计面向对象程序设计面向对象的程序设计思想是将事物的共性,面向对象的程序设计思想是将事物的共性,本质内容抽象出来封装成类。本质内容抽象出来封装成类。VFP又将软件开又将软件开发常用的功能抽象封装成标准类,开发者用类发常用的功能抽象封装成标准类,开发者用类定义所需对象,通过对对象的属性设置,对事定义所需对象,通过对对象的属性设置,对事件的编程完成程序设计,件的编程完成程序设计,VFP还提供了自定义还提供了自定义类及面向对象的其他完整机制与功能。类及面向对象的其他完整机制与功能。1.对象(对象(Object)现实世界中的任何实体都可
3、以称为对象,对象可现实世界中的任何实体都可以称为对象,对象可以是具体的实物,也可以是一个抽象的概念。在面向以是具体的实物,也可以是一个抽象的概念。在面向对象的程序设计中,表单、命令按钮和文本框等都是对象的程序设计中,表单、命令按钮和文本框等都是程序中的对象,是构成程序的基本单位和实体。程序中的对象,是构成程序的基本单位和实体。对象是应用程序的重要组成部分,通过对象的属对象是应用程序的重要组成部分,通过对象的属性、事件和方法来控制和管理对象,即性、事件和方法来控制和管理对象,即属性、事件和属性、事件和方法是构成对象的三个要素。方法是构成对象的三个要素。(1)对象属性:属性用来表示对象的状态。)对
4、象属性:属性用来表示对象的状态。(2)对象方法:对象方法是描述对象行为的过程。)对象方法:对象方法是描述对象行为的过程。(3)对象事件:)对象事件:是由对象能够识别和响应的操作。是由对象能够识别和响应的操作。7.1.1 7.1.1 对象对象 属性属性是用来描述和反映对象特征的参数。每个对象都有一是用来描述和反映对象特征的参数。每个对象都有一组属性,对象中的数据保存在属性中。属性值既可在设计时也组属性,对象中的数据保存在属性中。属性值既可在设计时也可在运行中设置。可以通过属性框直接设置属性,也可在代码可在运行中设置。可以通过属性框直接设置属性,也可在代码中通过赋值实现,其格式为:中通过赋值实现,
5、其格式为:对象名对象名.属性名属性名=属性值属性值 事件事件是由对象能够识别和响应的操作,这个操作是由程序员是由对象能够识别和响应的操作,这个操作是由程序员预先定义好的特定动作。使用预先定义好的特定动作。使用Visual FoxProVisual FoxPro时执行的任何动作时执行的任何动作几乎都可以看作事件。一般显示调用事件代码的格式为:几乎都可以看作事件。一般显示调用事件代码的格式为:对象名对象名.事件名事件名 方法方法是操作类对象的函数,通过执行该函数所定义的操作来是操作类对象的函数,通过执行该函数所定义的操作来完成一定功能。如果对象已创建,便可以在应用程序的任何一完成一定功能。如果对象
6、已创建,便可以在应用程序的任何一个地方调用这个对象的方法程序。调用方法的基本格式如下:个地方调用这个对象的方法程序。调用方法的基本格式如下:对象名对象名.方法名方法名1 1类类 类是对一类相似对象的性质描述,这些对象具有相同性类是对一类相似对象的性质描述,这些对象具有相同性质、相同种类的属性以及方法。每个类由属性、事件和方法质、相同种类的属性以及方法。每个类由属性、事件和方法程序的定义构成。程序的定义构成。2 2类的特征类的特征 (1)(1)继继承承性性:在在面面向向对对象象的的方方法法里里,继继承承是是指指在在基基于于现现有有的的类类创创建建新新类类时时,新新类类继继承承了了现现有有类类里里
7、的的方方法法和和属属性性。此此外外,可可以以为为新新类类添添加加新新的的方方法法和和属属性性。我我们们把把新新类类称称为为现现有有类类的的子子类,而把现有类称为新类的父类。类,而把现有类称为新类的父类。(2 2)封装性)封装性(3 3)多态性)多态性 7.1.2 7.1.2 类(类(ClassClass)1 1按按使用方式使用方式的不同,的不同,VFPVFP中的类可以分为:中的类可以分为:(1 1)可视化类)可视化类(2 2)非可视化类)非可视化类2 2按作用的不同,按作用的不同,VFPVFP中的类可以分为:中的类可以分为:(1)(1)容容器器:能能够够包包含含其其他他对对象象的的对对象象是是
8、容容器器对对象象,也也称称之之为为容容器器控控件件。如如:表表单单、命命令令按按钮钮组组、选选项项按按钮钮组组和和页页框框等等都是容器控件。都是容器控件。(2 2)控控件件:不不能能包包含含其其他他对对象象的的基基本本对对象象就就是是控控件件类类对对象象,如如:标标签签、命命令令按按钮钮、文文本本框框等等都都是是控控件件对对象象,也也称称之之为为标标准控件准控件7.1.3 7.1.3 类和对象的分类类和对象的分类7.2 可视化表单设计的基础 表单是用户与表单是用户与VFP应用程序之间进行数据交换的界面,是最为应用程序之间进行数据交换的界面,是最为常用的数据显示及编辑方式,它可以包含各种不同的控
9、件,用常用的数据显示及编辑方式,它可以包含各种不同的控件,用户通过可视化的设计方法,利用这些控件制作不同的按钮、下户通过可视化的设计方法,利用这些控件制作不同的按钮、下拉框、选项框等,使用户能利用友好、美观的人机交互界面进拉框、选项框等,使用户能利用友好、美观的人机交互界面进行数据的接收、显示和编辑,实现与应用程序的连接。表单是行数据的接收、显示和编辑,实现与应用程序的连接。表单是VFP的特色所在,它克服了浏览、查询、视图等交互界面的呆的特色所在,它克服了浏览、查询、视图等交互界面的呆板和不够丰富。表单是以文件形式保存其内容,表单文件扩展板和不够丰富。表单是以文件形式保存其内容,表单文件扩展名
10、为名为.SCX。根据表单数据来源的不同,可将表单分为以下几种类型:根据表单数据来源的不同,可将表单分为以下几种类型:(1)简单表单,该表单的数据来源于某一个表或某一个视图。)简单表单,该表单的数据来源于某一个表或某一个视图。(2)复杂表单,该表单的数据来源于多个表或多个视图。)复杂表单,该表单的数据来源于多个表或多个视图。(3)一对多表单,该表单的数据来源于两个表,这两个表必)一对多表单,该表单的数据来源于两个表,这两个表必须是按一对多的关系连接起来,其中一个为父表,另一个为子须是按一对多的关系连接起来,其中一个为父表,另一个为子表。表。常用表单属性属性属性用途用途默认值默认值AutoCent
11、er初始化时是否让表单自动在vfp窗口中居中.F.AlwaysOnTop表单是否总是处于其他窗口之上.F.BackColor决定表单窗口的颜色255,255,255BorderStyle指定表单边框风格:0-无边界,1-单线框,2-对话框,3-系统(可调)3Caption指定表单显示的标题文本Form1Closable是否可以通过单击关闭按钮或双击控制菜单框来关闭表单.T.DataSession指定表单里的表是在缺省的全局能访问的工作区打开(设置为1),还是在表单自己的私有工作区打开(设置为2)1MaxButton表单是否有最大化按钮.T.MinButton表单是否有最小化按钮.T.Movab
12、le表单是否能移动.T.Name指定表单名Form1Scrollbar指定滚动条类型:0-无,1-水平,2-垂直,3-水平垂直0TitleBar控制表单是否有标题栏:0-无,1-有1WindowState表单状态:0-正常,1-最小化,2-最大化0WindowType指定表单是模式表单(设置为1),或非模式表单(设置为0)0事件事件触发触发事件事件触发触发Load创建对象前RightClick用右键单击对象时Init创建对象时KeyPress按下并释放键盘时Activate对象激活时LostFocus对象失去焦点时GetFocus对象获得焦点时Unload释放对象时Click用左键单击对象时D
13、estry释放对象时在Unload前触发DblClick用左键双击对象时Error对象方法或文件代码产生错误时MouseUp释放鼠标键时Resize调整对象大小时MouseDown按鼠标键时MouseMove在对象上移动鼠标时表单事件表单常用方法方法含义Release将表单从内存中释放Refresh刷新表单或控件Show显示表单Hide隐藏表单Cls清除表单内容SetFocus使控件获得焦点7.2.3 7.2.3 对象的引用规则对象的引用规则(1)引用形式)引用形式对象对属性、文件、方法的引用是用点对象对属性、文件、方法的引用是用点“.”运算符。运算符。形式:形式:对象对象.属性属性|方法方法
14、|事件事件说明:对象若有包含与被包含关系,可以从外层用说明:对象若有包含与被包含关系,可以从外层用“.”引引用到内层对象。如在后面要介绍的命令按钮用到内层对象。如在后面要介绍的命令按钮Command1,对它的,对它的Caption属性的引用可以写成:属性的引用可以写成:ThisForm.Command1.Caption=“确定确定”,这个意思,这个意思是设置当前表单中的是设置当前表单中的Command1按钮的按钮的Caption属性属性为确定。为确定。ThisForm代表当前表单。代表当前表单。(2)对象在引用中常使用的关键字)对象在引用中常使用的关键字关键字含义例子This当前对象This.
15、CaptionThisForm当前表单ThisForm.CaptionThisFormSet当前表单集ThisFormSet.Form1.Command1.caption7.3 7.3 用表单向导设计表单用表单向导设计表单表单向导是通过与用户人机交互向导,完成对表单向导是通过与用户人机交互向导,完成对表进行浏览,编辑等基本操作界面的自动生成。表表进行浏览,编辑等基本操作界面的自动生成。表单向导为单表建立的表单称单表表单,为多表建立单向导为单表建立的表单称单表表单,为多表建立的表单称多表表单。的表单称多表表单。7.3.1 7.3.1 建立单表表单建立单表表单7.3.2 7.3.2 建立多表表单建
16、立多表表单1、建立表单、建立表单2、执行表单、执行表单3、编辑表单、编辑表单7.4 表单设计器用表单向导设计表单,固然简单方便又不需要编写代码,用表单向导设计表单,固然简单方便又不需要编写代码,但表单向导设计出的表单是有一定的固定模式,功能也有限。但表单向导设计出的表单是有一定的固定模式,功能也有限。如果想设计无固定模式,多功能的表单,表单向导是无法实现如果想设计无固定模式,多功能的表单,表单向导是无法实现的。的。VFP提供了表单设计器这个面向对象编程的可视化工具,提供了表单设计器这个面向对象编程的可视化工具,用以满足开发者设计风格各异,功能齐全的表单。用以满足开发者设计风格各异,功能齐全的表
17、单。菜单方式菜单方式新建表单:新建表单:“文件文件”“”“新建新建”,修改表单:修改表单:“文件文件”“”“打开打开”。命令方式命令方式新建表单:新建表单:CREATE FORM CREATE FORM 文件名文件名修改表单:修改表单:MODIFY FORM MODIFY FORM 文件名文件名“表单设计器表单设计器”窗口中有表单设计区和工具。窗口中有表单设计区和工具。(1 1)设计器窗口)设计器窗口 (2 2)属性窗口)属性窗口 (3 3)表单设计器工具栏)表单设计器工具栏(4 4)表单控件工具栏)表单控件工具栏 用表单设计器设计表单用表单设计器设计表单 1表单属性、方法和事件表单属性、方法
18、和事件(1)表单常用属性)表单常用属性属性含义AlwaysOnTop指定表单是否总是位于其他打开窗口之上AutoCenter指定表单是否居中显示BackColor,ForeColor指定表单窗口的背景颜色和前景颜色BorderStyle指定表单边框的风格Caption显示于表单标题栏上的文本ControlBox是否在表单的右上角显示图标Height,WidthLeft,Top指定表单的高度、宽度、位于容器左边和上边的单位距离。度量单位由ScaleMode指定Name表单的名称Visible表单在运行时是否可见Width表单的宽度WindowState指定表单的状态:0(正常)、1(最小化)、2
19、(最大化)7.4.2 表单设计器的基本操作表单设计器的基本操作(2 2)表单常用方法)表单常用方法 ReleaseRelease方法:方法:将表单从内存中释放。如表单有一个命令按钮,将表单从内存中释放。如表单有一个命令按钮,如果希望单击该命令按钮时关闭表单,就可以在该命令按钮如果希望单击该命令按钮时关闭表单,就可以在该命令按钮的的ClickClick事件中包含如下代码:事件中包含如下代码:ThisForm.ReleaseThisForm.Release表单运行时,表单运行时,用户单击表单右上角的关闭按钮,系统会自动执行用户单击表单右上角的关闭按钮,系统会自动执行ReleaseRelease方方
20、法。法。RefreshRefresh方法:方法:刷新表单。刷新表单。ShowShow方法:方法:显示表单。该方法将表单的显示表单。该方法将表单的VisibleVisible属性设置为属性设置为.T.T.。HideHide方法:方法:隐藏表单。该方法将表单的隐藏表单。该方法将表单的VisibleVisible属性设置为属性设置为.F.F.。与。与ReleaseRelease方法不同,方法不同,HideHide只是把表单隐藏,但并不将表单只是把表单隐藏,但并不将表单从内存释放,之后可用从内存释放,之后可用ShowShow方法重新显示表单。方法重新显示表单。(3)表单的常用事件)表单的常用事件Ini
21、t事件:事件:在表单创建时引发。在表单对象的在表单创建时引发。在表单对象的Init事件引发之前,将先引事件引发之前,将先引发它所包含的控件对象的发它所包含的控件对象的Init事件,所以在表单对象的事件,所以在表单对象的Init事件代码事件代码中能够访问它所包含的所有控件对象。在该事件中,可以为表单或中能够访问它所包含的所有控件对象。在该事件中,可以为表单或表单控件设置初始属性值、定义表单的参数、变量、打开数据库和表单控件设置初始属性值、定义表单的参数、变量、打开数据库和数据等。数据等。Load事件:事件:创建表单前引发。创建表单前引发。Active事件:事件:当激活表单对象时触发。当激活表单对
22、象时触发。Destroy事件:事件:在表单对象释放时引发。表单对象的在表单对象释放时引发。表单对象的Destroy事件在它事件在它所包含的控件对象的所包含的控件对象的Destroy事件引发之前引发,所以在表单对象的事件引发之前引发,所以在表单对象的Destroy事件代码中能够访问它所包含的所有控件对象。在该事件中,事件代码中能够访问它所包含的所有控件对象。在该事件中,主要是释放有关变量、关闭有关数据库和表等。主要是释放有关变量、关闭有关数据库和表等。UnLoad事件:事件:在表单对象释放后引发。在表单对象释放后引发。2、控件的操作与布局、控件的操作与布局控件操作控件操作(1)在表单中放置控件)
23、在表单中放置控件(2)控件在表单中的复制与粘贴)控件在表单中的复制与粘贴(3)调整大小)调整大小(4)删除控件)删除控件(5)在表单中放置多个同类的控件)在表单中放置多个同类的控件控件的布局控件的布局7.4.3 7.4.3 设置数据环境设置数据环境 1数据环境数据环境数据环境是一个对象,它包含与表单相互作用的表或视数据环境是一个对象,它包含与表单相互作用的表或视图,以及表之间的关系。默认情况下,数据环境中的表或视图,以及表之间的关系。默认情况下,数据环境中的表或视图会随表单的运行而打开,并随表单的关闭而关闭。图会随表单的运行而打开,并随表单的关闭而关闭。2打开打开“数据环境设计器数据环境设计器
24、”单击单击“表单设计器表单设计器”工具栏上的工具栏上的“数据环境数据环境”按钮,或按钮,或选择选择“显示显示”“数据环境数据环境”菜单命令菜单命令3向数据环境中添加表或视图向数据环境中添加表或视图4从数据环境中移去表或视图从数据环境中移去表或视图5在在“数据环境设计器数据环境设计器”中设置临时关系中设置临时关系将主表的某个字段拖曳到子表相匹配的索引标记或某个字段上将主表的某个字段拖曳到子表相匹配的索引标记或某个字段上7.5 7.5 常用表单控件常用表单控件常用控件的公共属性常用控件的公共属性name:控件的名称,它是代码中访问控件的标识(表单或表单集除外)。Fontname:字体名。Fontb
25、old:字体样式为粗体。Fontsize:字体大小。Fontitalic:字体样式为斜体。Forecolor:前景色。Height:控件的高度Width:控件的宽度。控件的高度和控件的宽度,也可在设计时通过鼠标拖曳进行可视化调整。Visible:控件是否显示。Enabled:控件运行时是否有效。如果为.T.,则表示控件有效,否则运行时控件不可使用。7.5.1 7.5.1 标签(标签(LabelLabel)控件)控件 1标签控件的功能标签控件的功能标签主要用于显示固定的文本信息。2标签控件常用属性标签控件常用属性caption:指定标签的显示文本。可以在设计时设置,也可以在程序运时设置或修改。a
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- vfp数据库及程序设计第7章 表单设计与应 vfp 数据库 程序设计 表单 设计
限制150内