第十五讲 面向对象编程实例 介绍有关对象的引用方法 和事件代码设计,并用实例说 明面向对象程序设计过程
第十五讲 面向对象编程实例 介绍有关对象的引用方法 和事件代码设计,并用实例说 明面向对象程序设计过程
本讲主要内容 利用类创建对象 引用对象的方法 事件触发顺序 >事件代码设计 面向对象编程实例
本讲主要内容 ➢ 利用类创建对象 ➢ 引用对象的方法 ➢ 事件触发顺序 ➢ 事件代码设计 ➢ 面向对象编程实例
利用类创建对象 用 Sy Form1 )创建 对“学号学号 娃名t姓名 性别txt 用 出生年月「txt出生年 出生地txt出生 专业txt专业 对象 例8- 综合考详xt综 F表中 的用 止创建 首记录前一条后一条 尾记录 ①创建表单对象,显示表单设计器窗口和表单控件工具栏 ②单击表单控件工具栏上的查看类按钮,选择添加…,将 cmd po类所在的类库 classxsda vcx添加进来,该工具栏上 将显示类库中已有类的对应的按钮。 ③后续操作与利用基类创建对象一样
利用类创建对象 用已有的类(基类或类库中的任何子类)创建 对象 用自己创建的子类或类库中的子类创建对象 例8-5 创建一个表单显示 学生基本情况.DBF表中 的记录,并使用新建的类cmdpos在表单上创建 用于定位记录的命令按钮组。 ① 创建表单对象,显示表单设计器窗口和表单控件工具栏 ② 单击表单控件工具栏上的查看类按钮 ,选择添加...,将 cmdpos类所在的类库classxsda.vcx添加进来 ,该工具栏上 将显示类库中已有类的对应的按钮 。 ③ 后续操作与利用基类创建对象一样
用命令创建对象 frmsI=CREATEOBJECT(Clas Test") frmsi show READ EVENTS&&开始等待事件发生,直到执行了 CLEAREⅤENTS DEFINE CLASS Clas Test AS Form ADD OBJECT cmdSsHOW AS CommandButton cmdsHOW. Caption=显示信息 dshow Fontsize=14 cmdsHoW. Fore color=RGB(250,0,0) cmdsHoW. Left=50 cmdsHOW.Top=40 cmdshoW. Height=40 dshow width=180 PROCEDURE cmdsHoW click WAIT WINDOW"你好!我是狐狸。" CLEAR EVENTS &&结束事件等待状态 Thisform. Release &&释放表单 ENDPROC ENDDEFINE
用命令创建对象 语法形式:<对象名> = CREATEOBJECT( <类名> [,参数1,参数2,...]) 例8-6 编一程序实现以下任务。定义表单类 ClasTest,它包含一个用来显示一条消息命令按 钮。用该类创建一个表单对象frmS1,显示这个 对象。 frmS1=CREATEOBJECT("ClasTest") frmS1.Show READ EVENTS && 开始等待事件发生,直到执行了CLEAR EVENTS DEFINE CLASS ClasTest AS Form ADD OBJECTcmdSHOW AS CommandButton cmdSHOW.Caption="显示信息" cmdSHOW.FontSize=14 cmdSHOW.ForeColor=RGB(250,0,0) cmdSHOW.Left=50 cmdSHOW.Top=40 cmdSHOW.Height=40 cmdSHOW.Width=180 PROCEDUREcmdSHOW.Click WAIT WINDOW"你好!我是狐狸。 " CLEAR EVENTS && 结束事件等待状态 Thisform.Release && 释放表单 ENDPROC ENDDEFINE
对象操作符及引用符 °点(.)操作符:指明对象之间的包容关系或对象与其 属性、事件、方法之间的属主关系 <容器对象名><控件对象名>Form1 CmdEXI <对象名><属性名>Form1 CmdEXIT Enabled=F. ·作用域(∷)操作符:当需要子类方法既有父类的功 能,又能添加一些自己特有的功能代码时可从一个子 类或子类定义的对象内部调用其父类的方法 <父类名>::<方法名> ·This引用符:表示当前活动的对象 Ths<对象名>:表示当前活动容器下的对象; Thi<属性>:表示当前活动对象的属性; Ths<方法>:表示当前活动对象的方法
对象操作符及引用符 点(.)操作符 :指明对象之间的包容关系或对象与其 属性、事件、方法之间的属主关系 <容器对象名>.<控件对象名> Form1.CmdEXIT <对象名>.<属性名> Form1.CmdEXIT.Enabled=.F. 作用域(::)操作符 :当需要子类方法既有父类的功 能,又能添加一些自己特有的功能代码时可从一个子 类或子类定义的对象内部调用其父类的方法 <父类名>::<方法名> This引用符 :表示当前活动的对象 This.<对象名> :表示当前活动容器下的对象; This.<属性> :表示当前活动对象的属性; This.<方法> :表示当前活动对象的方法