文档介绍:面向对象编程实例
介绍有关对象的引用方法和事件代码设计,并用实例说明面向对象程序设计过程。
本讲主要内容
利用类创建对象
引用对象的方法
事件触发顺序
事件代码设计
面向对象编程实例
利用类创建对象
用已有的类(基类或类库中的任何子类)创建对象
用自己创建的子类或类库中的子类创建对象
例8-5 表中的记录,并使用新建的类cmdpos在表单上创建用于定位记录的命令按钮组。
①创建表单对象,显示表单设计器窗口和表单控件工具栏
②单击表单控件工具栏上的查看类按钮,选择添加...,,该工具栏上将显示类库中已有类的对应的按钮。
③后续操作与利用基类创建对象一样。
用命令创建对象
语法形式:<对象名> = CREATEOBJECT( <类名>[,参数1,参数2,...])
例8-6 编一程序实现以下任务。定义表单类ClasTest,它包含一个用来显示一条消息命令按钮。用该类创建一个表单对象frmS1,显示这个对象。
frmS1=CREATEOBJECT("ClasTest")
READ EVENTS && 开始等待事件发生,直到执行了CLEAR EVENTS
 
DEFINE CLASS ClasTest AS Form
ADD OBJECT cmdSHOW mandButton
="显示信息"
=14
=RGB(250,0,0)
=50
=40
=40
=180
PROCEDURE
WAIT WINDOW "你好!我是狐狸。"
CLEAR EVENTS && 结束事件等待状态
&& 释放表单
ENDPROC
ENDDEFINE
对象操作符及引用符
点(.)操作符:指明对象之间的包容关系或对象与其属性、事件、方法之间的属主关系
<容器对象名>.<控件对象名> <对象名>.<属性名> =.F.
作用域(::)操作符:当需要子类方法既有父类的功能,又能添加一些自己特有的功能代码时可从一个子类或子类定义的对象内部调用其父类的方法
<父类名>::<方法名>
This引用符:表示当前活动的对象
This.<对象名> :表示当前活动容器下的对象;
This.<属性> :表示当前活动对象的属性;
This.<方法> :表示当前活动对象的方法。
对象操作符及引用符
ThisForm引用符:当前正活动着的表单
ThisForm.<对象名> :表示当前活动表单下的对象;
ThisForm.<属性> :表示当前活动表单的属性;
ThisForm.<方法> :表示当前活动表单的方法。
ThisFormSet引用符:当前正活动的表单集
ThisFormSet.<对象名> :表示当前活动表单集下的表单;
ThisFormSet.<属性> :表示当前活动表单集的属性;
ThisFormSet.<方法> :表示当前活动表单集的方法。
Parent引用符:包含当前活动对象的直接容器
用来引用控件的容器对象的属性、方法、事件,还可引用一个页或表单的容器对象。
对象引用层次、方法
引用对象时要搞清它所在的容器及该容器的层次
表单集
表单
页框
页面
表格
列
各种控件
各种控件
标头、文本框等控件
绝对引用:从最外层的容器开始逐层指明各个对象名,直到最内层的控件对象,之间用点操作符分隔。
相对引用:从当前活动对象开始指明被引用对象与当前活动对象的层次(相对位置)关系。通常使用Parent (包含活动对象的容器)、This(活动对象)、ThisForm(活动表单)、ThisFormSet(活动表单集)来实现相对引用。
添加和设置属性
对象属性的设置有方法常见的有两种:
在程序中通过相对引用或绝对引用指明需要修改对象的属性,用赋值的方式设置属性值。
="显示信息"
=14
=RGB(250,0,0)
=50
使用“属性”窗口找到需要设置的属性再修改其值;
可读可改写属性
引用方法
无参数也无返回值的引用
语法形式: <对象名>.<方法名>
如:
带参数