表单设计与应用.doc
《表单设计与应用.doc》由会员分享,可在线阅读,更多相关《表单设计与应用.doc(53页珍藏版)》请在三一办公上搜索。
1、表单设计与应用一、【教学目标】理解面向对象的概念了解foxpro的基类、容器与控件和事件的基本内容理解并掌握创建与管理表单的方法理解并掌握表单设计器的使用方法理解并掌握常用表单控件的使用方法二、【教学内容】面向对象程序设计的基本概念foxpro的基类、容器与控件和事件创建与管理表单的方法表单设计器的使用方法常用表单控件的使用方法三、【重点和难点】重点:类、对象、属性、事件和方法的概念表单的创建与管理表单方法各种控件的创建与编程方法难点:类、对象、属性、事件和方法的概念表单的创建与管理表单方法各种控件的创建与编程方法四、【教学要点】8.1 面向对象的概念8.1.1 对象与类1.对象 客观世界里的
2、任何实体都可以被看作是对象,对象可以是具体的物,也可以指某些概念,每个对象都有自己的行为。 使用面向对象的方法解决问题的首要任务就是要从客观世界里识别出相应的对象,并抽象出为解决问题所需要的对象属性和对象方法。属性用来表示对象的状态,方法 用来描述对象的行为。在面向对象的方法里,对象被定义为由属性和相关方法组成的包。方法是描述对象行为的过程,是对当某个对象接受了某个消息后多采用的一系列操作的描述。2.类 类是一类对象关系的性质描述。这些对象具有相同种类的属性及方法。类好比是一类对象的模板,有了类定义后,基于类就可以生成这类对象中的任何一个对象,这些对象虽然采用相同的属性来表示状态,但它们在属性
3、上的取值完全可以不同。在类的定义中,可以为某个属性指定一个值,作为它的默认值。 通常,我们把基于某个类生成的对象称为这个类的实例。注意:方法尽管定义在类中,但执行方法的主体是对象。8.1.2 子类与继承 继承是指基于现有的类创建新类时,新类继承了现有类里的方法和属性。 一个子类的成员一般包括: 由其父类继承的成员,包括属性和方法。 由子类自己定义的成员,包括属性和方法。继承可以使在一个父类所作的改动反映到它的所有子类上。8.2 Visual Foxpro基类简介8.2.1 Visual Foxpro基类 Visual FoxPro基类是系统内含的、并不存放在某个类库中。用户可以基于基类生成所需
4、要的对象,也可以扩展基类创建自己的类。下表是Visual FoxPro基类的清单。类名 含义类名 含义ActiveDoc活动文档Lable标签CheckBox复选框Line线条Column表格列Listbox列表框ComboBox组合框OleControlOLE容器控件CommandButton命令按钮OleBoundControl绑定控件CommandGroup命令按钮组OptionButton选项按钮Container容器OptionGroup选项按钮组Control控件Page页Custom定制PageFrame页框EditBox编辑框ProjectHook项目挂钩Form表单Separ
5、ator分隔符Formset表单集Shape形状Grid表格Spinner微调控件Header(列)标头Textbox文本框HyperLink超级链接Timer定时器Image图像Toolbar工具栏 每个Visual FoxPro基类都有自己的一套属性、方法和事件。当扩展某个基类创建用户自定义类时,该基类就是用户自定义类的父类,用户自定义类继承该基类中的属性、方法和事件。下表列出了Visual Foxpro基类的最小属性集。属性说明class类名,当前对象基于哪个类生成BaseClass基类名,当前类从哪个Visual FoxPro基类派生而来ClassLibrary类库名,当前类放在哪个类
6、库中ParentClass父类名,当前类从哪个类直接派生而来 在编程方式里,对象的生成通常使用createobject函数来完成。该函数的格式如下: CREATEOBJECT(,.)函数基于指定的类生成一个对象,并返回对象的引用。通常,可以把函数返回的对象引用赋给某个变量,然后,通过这个变量来标识对象、访问对象属性以及调用对象方法。对象属性访问以及对象方法调用的基本格式如下:.(.)8.2.2 容器与控件VisualFoxPro中的类可分为两中类型:容器类和控件类。相应地,可分别生成容器(对象)和(控件)对象。控件是一个可以以图形化的方式显示出来并能与用户进行交互的对象,控件通常被放在一个容器
7、里。容器可以被认为是一种特殊的控件,它能包含其他的控件或容器,这里把对象称为那些被包容对象的父对象。下表列出了常用的容器及其所能包容的对象。容器能包容的对象表单集表单、工具栏表单任意控件以及页框、container对象、命令按钮组、选项按钮组、表格等对象表格列列标头和除表单集、表单、工具栏、定时器及其他列之外的任意对象页框页页任意控件及Container对象、命令按钮组、选项按钮组、表格等对象命令按钮组命令按钮选项按钮组选项按钮Container对象任意控件以及页框、命令按钮组、选项按钮组、表格等对象 在对象的嵌套层次关系中,要引用其中的某个对象,也需要指明对象在嵌套层次中的位置。这是经常用到
8、如下表所列的几个属性或关键字。属性或关键字引用parent当前对象的直接容器对象This当前对象ThisForm当前对象所在表单ThisFormSet当前对象所在的表单集这里parent是对象的一个属性,属性值为对象引用,后面三个是关键字,只能用在方法代码和事件代码中。8.2.3 事件事件是由系统预先定义而由用户或系统发出的动作。事件作用于对象,对象识别事件并作出相应的反应。事件可以由系统引发,也可以由用户引发。与方法集可以无限扩展不同,事件集是固定的。用户不能定义新的事件。下表列出了Visual Foxpro基类的最小事件集。事件说明Init当对象生成时引发Destroy当对象从内存中释放时
9、引发Error当方法或事件代码出现运行错误时引发事件代码既能在事件引发时执行,也可以像方法一样被显式调用。比如,在产生一个表单对象oForm时,系统会自动执行init事件代码,但用户也可以在随后用下面的命令显示调用该表单对象的init事件代码: oForm.Init每个对象识别并处理属于自己的事件。但这个原则不适合于命令按钮组和选项按钮组。在命令按钮组或选项按钮组中,如果为按钮组编写了某事件代码,而组中某个按钮没有与该事件相关联的代码,那么当这个按钮的事件引发时,将执行组事件代码。8.3 创建和管理表单8.3.1 创建表单(表单文件.scx,表单备注文件.sct)1. 使用表单向导创建表单(表
10、单向导,一对多表单向导)法1:项目管理器/文档/表单/新建/表单向导法2:工具/向导/表单/表单向导(向导不能创建基于视图的表单)采用上面任意一种方法后,系统将打开“表单生成器”对话框。利用向导创建单表的表单 字段选取 样式与按钮类型 排序次序 完成如果是通过项目管理器启动的向导,则创建的表单将自动地包含在项目中,否则可以在项目管理器中利用表单的“添加”操作将表单添加到项目中 利用向导创建一对多表单 选择子表 从子表中选定字段 确定表之间的关系(如果两个表为数据库表且具有永久性关系,在向导中系统不会自动地作为默认的关系) 选择表单的样式与按钮类型 确定排序次序 输入表单标题后,可以选择“预览”
11、以运行表单、查看表单 完成 2. 使用表单设计器创建表单 项目管理器/“文档”选项卡/“表单”/“新建”/“新表单”按钮常用工具栏的“新建”按钮/“表单”/“新建文件”“文件”/“新建”/“表单”/“新建文件”命令窗口中执行 CREATE FORM 执行以上命令就会打开“表单生成器”对话框,如图所示在表单设计器环境下,也可以调用表单生成器快速地产生表单,调用方法有三种: “表单”/“快速表单”。“表单设计器”工具栏中的“表单生成器”按钮。右键单击表单窗口,在弹出的快捷菜单中选择“生成器”命令。执行以上命令就会打开表单生成器对话框,如图所示。3. 修改表单 MODIFY FORM “项目管理器”
12、/“文档”/表单左边的加号/需要修改的表单文件/单击修改按钮。4. 运行表单 “项目管理器”/选择表单/运行。在表单设计器环境下,“表单”/“执行表单”或运行按钮。 DO FORM 命令do form 表单文件名NAMEWITH ,.LINKEDNOSHOW如果在“命令”窗口发出DO FORM命令,表单对象就和一个公共变量相关联,可以通过这个变量名来访问表单对象。例如,在“命令”窗口发出下面的命令,打开一个名为Student的表单并改变它的标题。DO FORM StudentStudent.Caption=学生情况登记如果包含NAME子句,系统将建立指定名字的变量,并使它指向表单对象;否则系统
13、建立与表单文件同名的变量指向表单对象。如果包含WITH子句,那么在表单运行引发init事件时,系统会将各实参的值传递给该事件代码PARAMETERS或LPARAMTERS子句中的各形参。DO FORM命令中的LINKED关键字允许将表单和表单对象变量链接起来,如果包含了LINKED关键字,当与表单对象相关联的变量超出范围时,表单将被释放。例如,下面命令创建一个链接到对象变量mystud2的表单:DO FORM Student NAME mystud2 LINKED当释放mystud2时, 表单也关闭。一般情况下,运行表单时,在产生表单对象后,将调用表单对象的show方法显示表单,如果包含nos
14、how关键字,表单运行时将不显示,直至表单对象的visible属性设置为.T.或者调用了show方法。8.3.2 管理表单属性和方法1. 常用的表单属性2. 创建新属性“表单”/“新建属性”,打开如图所示的对话框“名称”框中输入属性名称。“说明”框中输入新建属性的说明信息3. 创建新方法“表单”/“新建方法程序”,打开如图所示的对话框“名称”框中输入方法名。“说明”框中输入新建方法的说明信息。4. 编辑方法或事件代码 “显示”/“代码”打开编辑窗口。“对象”框中选择方法或事件所属的对象。“过程”框中指定要编辑的 方法或事件。编辑区修改方法或事件的代码。打开代码窗口的方法: 双击表单中的某个控件
15、。在属性窗口的列表框中双击某个方法或事件。8.3.3 常用事件与方法。8.4 表单设计器8.4.1 表单设计器环境1. 表单设计器窗口2. 属性窗口属性窗口如图所示 表单及其控件均称为“对象”,每个对象均有其属性、事件和方法,不同类型的对象有不同的属性、事件和方法,可以在“属性”窗口中查看、修改或设置该对象的属性、事件和方法,控件的属性、事件及方法的设置可在“属性”窗口中进行,“属性”窗口包含选定的表单、数据环境或控件的属性、事件和方法列表,可在设计或编程时对这些属性值进行设置或更改。窗口中的各个选项卡上的内容,由于不同类型的对象可能有不同的属性、事件和方法,所以选项会根据选定的对象的不同而变
16、化。 对于表单中绝大多数属性,其数据类型通常是固定的,也有些属性的数据类型并不是固定的。 一般来说,要为属性设置一个字符型值,可以在设置框中直接输入,不需要加定界符,否则系统会把定界符作为字符串的一部分,但对既可接收数值型数据又可接受字符型数据的属性来说,如果直接输入数字123,系统会把它作为数值型数据对待。要为这类属性设置数字格式的字符串,可采用表达式的方式,如=123。 要通过表达式为属性赋值,可以再设置框中先输入等号再输入表达式,或者单击设置框左侧的函数按钮打开表达式生成器,用它来给属性指定一个表达式。表达式在运行初始化对象时计算。 有些属性的设置需要从系统提供的彝组属性值中指定,此时可
17、以单击设置框右侧的下拉箭头打开列表框从中选择,或者在属性列表框中双击属性,即可在各属性值之间进行切换。 要把一个属性设置为默认值,可以在属性列表框中右键单击该属性,然后在快捷菜单中选择“重置为默认值”。要把一个属性设置为空串,可以选定该属性后,依次按BackSpace键和Enter键,此时在属性列表框中该属性的属性值显示为(无)。 有些属性在设计时是只读的,用户不能修改。这些属性的默认值在列表框中以斜体显示。 也可以同时选择多对象,这时属性窗口中显示这些对象的共有的属性,用户对属性的设置也将针对所有被选定的对象。 “属性”窗口可以通过单击“表单设计器”工具栏中“属性窗口”按钮或选择“显示”菜单
18、中的“属性”命令打开或关闭。3. 表单控件工具栏 选定对象按钮:当按钮处于按下状态时,表示不可创建控件,此时可以对已创建的控件进行编辑;当按钮处于未按下状态时,表示允许创建控件。查看类按钮:在可视化设计表单时,除了可以使用基类,还可以使用保存在类库中的用户自定义的类,但应先将它们添加到“表单控件”工具栏中。方法是单击工具栏上的“查看类”按钮,然后在弹出的菜单中选择“添加”命令,调出“打开”对话框,选定所需的类库文件,单击“确定”按钮。要使“表单控件”工具栏重新显示基类,可选择“查看类”按钮弹出的菜单中的“常用”命令。标签(只读)文本框(单行,可输入)编辑框(多行,可输入)命令按钮命令组选项组复
19、选框组合框(选择,输入)列表框(选择按钮锁定按钮:当按钮处于按下状态时,可以从“表单控件“工具栏中单击选定某种控件按钮,然后在表单窗口中连续添加这种控件。生成器所定按钮:当按钮处于按下状态时,每次往表单添加控件,系统都会自动打开相应的生成器对话框。4. 表单设计器工具栏 ,这几个按钮依次为:设置 Tab 键次序数据环境属性窗口代码窗口表单控件工具栏调色板工具栏布局工具栏表单生成器自动格式 5. 表单菜单表单菜单中的命令主要用于创建、编辑表单或表单集。(7)表单设计的环境设计若要查看和更改环境设置,可以从“工具”菜单中选择“选项”命令 。 “选项”对话框有十个选项卡,选择“表单”选项卡可以为新表
20、单修改表单设计器选项的默认值(已有的表单使用存储在资源文件中的设置)。这些选项应用于在当前数据工作期中设计的任何表单或表单集上 。8.4.2 控件的操作与布局1. 控件的基本操作选定控件选定单个控件:单击控件;同时选定相邻的多个控件:拖动鼠标使出现的框围住所选的控件;同时选定不相邻的多个控件:按住shift键的同时,依次单击各控件。 移动控件选定控件,然后用鼠标拖动既可。如果拖动时按住了ctrl键,可以使鼠标移动的步长减小。使用方向键也可以移动控件。 调整控件大小先选定然后拖动四周的控点 复制控件县选定控件,接着选择“编辑菜单中的“复制”命令,然后选择“编辑”菜单中的“粘贴”命令,最后将复制产
21、生的新控件拖动到新的位置。 删除控件选定不需要的控件,按delete键或选择“编辑”菜单中的“剪切”命令。 2. 控件布局按钮功能左边对齐让选定的所有控件沿其中最左边的那个控件的左侧对齐右边对齐让选定的所有控件沿其中最左边的那个控件的右侧对齐顶边对齐让选定的所有控件沿其中最左边的那个控件的顶边对齐底边对齐让选定的所有控件沿其中最左边的那个控件的底边对齐垂直居中对齐使所有被选控件的中心处在一条垂直轴上水平居中对齐使所有被选控件的中心处在一条水平轴上相同宽度调整所有被选控件的宽度,使其与其中最宽控件的宽度相同相同高度调整所有被选控件的高度,使其与其中最高控件的高度相同相同大小使所有被选控件具有相同
22、大小水平居中使被选控件在表单内水平居中垂直居中使被选控件在表单内垂直居中置前将被选控件移至最前面,可能会把其他控件覆盖住置后将被选控件移至最后面,可能会把其他控件覆盖住3. 设置tab键次序工具/选项,打开“选项”对话框。 选择“表单”选项卡。 在“tab键次序”下拉列表框中选择“交互”或“按列表” 在交互方式下,设置tab键次序的步骤如下:显示/Tab键次序或单击“表单设计器”工具栏上的“设置Tab键次序”按钮,进入tab键次序设置状态。此时控件左上方出现深色小方块,称为Tab键次序盒,显示该控件的Tab键次序号码。 如图所示。双击某个控件的tab键次序盒,该控件将成为Tab键次序中的第一个
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 表单 设计 应用

链接地址:https://www.31ppt.com/p-2386393.html