7.3.1 对象的建立
1. 由类创建对象
对象是在类的基础上派生出来的,只有具体的对象才能实现类的事件或方法的操作。
格式: CreateObject(< 类名 >)[ , < 参数表达式 1>] [ , < 参数表达式 2> … ]
功能:从类定义或 OLE 对象中创建一个对象,并返回对象的引用。
说明: < 类名 > 可以是用户自定义的类,也可以是系统提供的类。
2. 在容器对象中添加对象
格式: < 容器对象 >.AddObject(< 控件对象 > , < 类名 >[ , < 参数 1>,< 参数 2> … ])
功能:向容器对象中添加控件对象。
说明:
①添加对象可用在一般程序和类的方法中,但不能用在类的定义中。
②向容器对象添加控件对象时, Visible 属性默认设置为 .F. ,即对象不可见,如果要使对象可见,需将其属性修改为 .T. 。
③函数中的参数可以传递给对象的 INIT 方法并触发 INIT 方法。
3. 释放对象
对象变量和一般类型的内存变量具有同样的作用域。通常用 PUBLIC 说明全局对象变量,用 LOCAL 说明本地对象变量。若不说明,则表示是私有对象变量。
7.3.2 对象的引用
在容器类对象中可以包含其它对象,由此构成了对象之间互相包含的层次关系。在 VFP 中,对象是通过容器的层次关系来引用的。
( 1 )绝对引用
通过提供对象的完整容器层次来引用对象称为绝对引用,它是从最外层容器指向目标对象的。
( 2 )相对引用
从参照对象指向目标对象的地址引用称为相对引用。
7.3.3 对象的属性设置与方法调用
1. 属性设置
在 VFP 中,可以在设计时刻,也可以在运行时刻进行属性设置;设置时既可以利用“属性”窗口,也可以在程序代码中使用命令语句。设置对象属性主要使用赋值语句。
格式 1 : < 对象 >.< 属性 >=< 属性值 >
说明: < 对象 > 是相对于容器层次而言的。
格式 2 : WITH< 对象 >
[.< 语句序列 >]
ENDWITH
说明:使用格式 2 设置语句,可以同时给对象设置多个属性。
2. 对象方法的调用
当对象创建以后,就可以在应用程序的任何一个地方调用这个对象的方法,调用方法的命令格式如下:
< 对象 >.< 方法 >[( 参数表 )]
功能:调用对象的方法。
3. 调用基类中的方法
对象和子类会自动继承基类的全部功能,同时用户可以用新的功能替代这些继承来的功能。如果用户希望向新类或对象中添加新功能的同时保留父类功能,如继续执行父类中的事件代码,可以使用作用域运算符在子类或对象中调用基类中的方法。
|