学习网考试学习资料

Gzu521.com

全国计算机等级二级VFP基础教程(11)

全国计算机等级考试   点击:次   发布时间:2008-3-27   【字体: 】   来源:Gzu521.com
Gzu521.com我的学习网

6.2 类的创建

1. 创建类的方法

(1)类设计器

(2)表单设计器

(3)编程方式

2. 用类设计器创建类

使用“类设计器”能够可视化地创建并修改类。类存储在类库 (.vcx) 文件中。

(1) 创建新类

可以用三种方法(文件菜单、项目管理器、create class命令)打开类设计器并在其中创建新类,且在设计时就能看到每个对象的最终外观。

步骤:

单击文件菜单中的新建 → 选择类,新文件 → 在对话框中给出新类的名称、新类基于的类以及保存新类的类库 进入类设计器 < 根据需要在基类的基础上进行所需修改 关闭设计器并确定保存。

(2) 为类指定设计时的外观

1) 为类设置一个工具栏图标

在类设计器中从菜单中选择类信息 → 打开类信息对话框,在工具栏图标框中键入 .bmp 文件的名称和路径。

附注

工具栏图标的 .bmp 文件必须是 15 x 16 象素点大小。如果图片过大或过小,它将被调整到 15 x 16 象素点,图形可能变形。

2) 为类设置一个容器图标

打开类设计器从类菜单选择类信息 → 在容器图标框中键入将在表单设计器中的控件工具栏按钮上显示的 .bmp 文件名称和路径。

(3) 创建类库

可以用三种方法创建类库。

1) 在创建类时,在新类对话框的“存储于”框中指定一个新的类库文件。

2) 使用 create class 命令,同时指定新建类库的名称。

例如,下面的语句创建了一个名为 myclass 的新类和一个名为 new_lib 的新类库:

create class myclass of new_lib as custom

3) 使用 create classlib 命令。

例如,在命令窗口键入下面的命令,可以创建一个名为 new_lib 的类:

create classlib new_lib

(5) 修改类定义

在创建类之后,还可以修改它,对类的修改将影响所有的子类和基于这个类的所有对象。也可以增加类的功能或修改类的错误,所有子类和基于这个类的所有对象都将继承修改。在项目管理器中选择所要修改的类或使用 modify class 命令进行修改。

(6) 将表单和控件保存为类

可以将表单或表单上的控件子集保存为类定义。如果打算创建基于表单的子类,或在其他表单中重新使用这些控件,可将表单作为类定义来保存。

从文件菜单中选择另存为类→ 在另存为类对话框中,选择当前表单或选定控件→ 在“类名”框中输入类的名称→在文件框中输入保存类的文件名 →选择确定按钮。

3. 用编程方式创建类

在程序窗口中建立一个定义类的程序文件(扩展名为.prg),然后执行该程序。

4.将类添加到表单、表单集和工具栏中

(1) 注册一个类库

从工具菜单中选择选项 → 在选项对话框中选择控件选项卡 → 选择可视类库并选择添加按钮 → 在打开对话框中选择要注册的类库并选择打开 → 选择确定按钮。

(2) 给子类增加功能

使用作用域操作符 (::) 可以在子类上调用父类的代码,引用父类的方法。

调用父类方法的语法是:parentclass::method( )

(3) 将属性和方法添加到类

可以向新类中添加任意多的新属性和新方法。属性保存一个值,而方法则保存调用时可以运行的过程代码。

从类菜单选择新属性或新方法 → 在新属性对话框中键入属性或方法的名称 → 指定它是否受保护。

5. 类浏览器

(1) 类浏览器的作用

可创建子类,把类从一个类库复制到另一类库,删除类和库文件,重命名类或者重新定义类关系。

注意:如果要对类进行删除、重命名或重定义,则基于此类的表单可能不能正确运行。

(2) 添加一个子类

在类浏览器中打开类库 → 选择要从中派生子类的类,然后选择新类按钮 →< 在新类对话框中输入新子类名 → 在类设计器中定义并保存子类。

(3) 把类从一个类库复制到另一类库中

在类浏览器中打开源类库 → 从工具菜单中打开类浏览器的第二个实例,并选择目标库文件 → 在源类库中选择要复制的类,然后在按住ctrl键的同时,把位于类列表上方的类图标拖到目的库中的类图标上。若不同时按住ctrl键则是移动。

(4)把多个类从一个类库文件复制到另一个类库文件中

在类浏览器中打开源类库 → 如果要筛选类列表,则在类型框中键入筛选条件以限定想要从文件中复制的类 → 从工具菜单中,打开类浏览器的第二个实例,并选择目标库文件 → 在源类库中,选择要复制的类库文件,然后在按住ctrl键的同时,把位于类列表上方的类图标拖到目标库中的类图标上。

(5) 删除类、类库或表单

1) 在类浏览器中打开类库或表单。

2) 在类列表中,选择要删除的类、类库或表单,然后选择删除按钮。对类来说,它在库中的记录标有删除标记,下一次就可选择清除类库;对类库和表单来说,文件是从磁盘中删除。

(6) 重命名类库中的类,

在类浏览器中打开类库 → 在类列表中,选择要重命名的类,然后选择重命名按钮 → 在重命名类对话框中,输入新的名称,然后选单击重命名。

注意:如果对具有相关子类的类重命名,则子类将不能引用从重命名类中继承下来的属性。

(7) 更改一个类的父类

在类浏览器中打开类库 → 在类列表中,选择想要重定义的类,然后选择重定义按钮 → 在重定义对话框的为框中,输入新的父类名。新父类与原父类必须是来源于同一基类 → 在基于框中,选择或输入类库文件名。

(8) 定制类浏览器

可更改类浏览器的属性、事件和方法。可通过程序来操作类浏览器:

1) 打开类浏览器将自动创建公共变量 _obrowser,可使用此变量来引用或操作类浏览器表单,如同对任何表单对象一样。

2) 对要更改的类浏览器的属性进行设置。

例如,在打开类浏览器之前,可通过下列命令把类浏览器的标题属性设置为 hello:

_obrowser.caption = "hello"

_obrowser.left = 10

3) 打开类浏览器,创建一个实例。

例如,为了打开类浏览器,可输入代码:do (_browser)

6.3 创建并处理对象

1. 创建对象

(1) 编程方式

先创建一个类,再用 createobject()函数来创建。

(2) 可视化方式

用表单设计器创建。

2. 引用对象

引用对象时,对象与对象之间、对象与属性之间需用分隔符 . 进行分隔。

(1) 绝对引用

从容器的最高层引用对象,给出对象的绝对地址。如:form1.text1.value

(2) 相对引用

在容器层次中相对于某个容器层次的引用。如:thisform .text1.value

属性或关键字

引用

activecontrol

当前活动表单中具有焦点的控件

activeform

当前活动表单

activepage

当前活动表单中的活动页

parent

该对象的直接容器

this

该对象

thisform

包含该对象的表单

thisformset

包含该对象的表单集

 

系统变量 _screen 表示屏幕对象,与 activeform 等组合可以在不知道表单名的情况下处理活动表单。

上 一 页 下 一 页
14页: 第 [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14]

责任编辑:gzu521

IT认证分类
计算机软件水平考试
全国计算机等级考试
思科认证
微软认证
ORACLE/CIW认证
Linux认证
JAVA认证
其它认证
分类推荐信息
更多...
大类最新文章
更多...