- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
表单的设计和应用 第七章 7.1 面向对象的概念 7.1.1对象和类 类(Class)定义了对象特征以及对象外观和行为的模板,它刻画了一组具有共同特征的对象。 类是对象的抽象,对象是类的实例 类是静态概念,对象是动态概念 对象是基于某种类所创建的实例,包括了数据和过程 应用程序中的对象 表单( Form )、表单集( FormSet )、控件( Control ) 类(Class) 基类(Base Class):VFP系统提供的内部定义的类。 子类(SubClass):引用VFP基类或其他的子类,建立的新类。 用户自定义类(User-Define Class):与基类相似,由用户定义,可用于派生子类,但无可视的表示形式 类的特点 继承性(inheritance) 多态性(polymorphism) 封装性 (encapsulation) 抽象性(abstraction) 对象(Object) 对象是基于某种类所创建的实例。 每个对象都具有属性,及与之相关的事件和方法 属性(Property) 定义对象的特征或某一方面的行为。 对象的属性值可在设计阶段或运行阶段修改 事件(Event) 是对象识别的一个动作。 可编写相应的代码,对动作进行响应 事件可由用户的动作、程序代码或系统产生 对象的事件集合是固定的,用户不能创建新的事件 方法(Method) 是对象能够执行的一个操作。 方法是与对象相关联的过程,也称方法程序 方法可由用户自己创建 7.2VFP中的类和控类 基类:VFP系统提供的内部定义的类。 子类:引用VFP基类或其他子类建立的新类。 用户自定义类:与基类相似,由用户自定义,但无可视的表示形式 类库(.vcx, .vct):用于存放子类的库文件。 基类和子类 VFP的类 基类、子类、用户自定义类 VFP的基类 基类的最小事件集和最小属性集 类库(.vcx, .vct):用于存放子类的库文件 容器类(Container classes)是包容其他类的基类 容器可以包含其它对象; 容器可以作为所包含的对象的父对象; 允许访问包含的对象; 控件类(Control classes)是可以包含在容器类中并有用户派生的基类。 控件对象可以包含在容器中 不能作为其它对象的父对象 基于类的不同类型,VFP的对象可分为容器对象和控件对象 对象的引用 何时要引用对象 当要设置或取得对象的某个属性的值时; 当要执行对象的某个方法事件时; 容器层次体系 容器与容器中的控件是上下层次的关系; 一个应用程序的最高层次是 _screen或_VFP,最低层次是一个非容器类控件或是一个不包含任何控件的容器类控件; 层次体系示意图 根据对象的层次体系引用对象 绝对引用(全名引用):从表单或表单集开始,把层次体系中的对象名由大到小用圆点隔开,直到要引用的控件的某个属性。 相对引用 在控件内对自身引用:This 自身所在容器(父对象)的引用: Parent 控件所在的表单的引用: Thisform 控件所在的表单集的引用: Thisformset 活动的表单的引用: Activeform 活动的控件的引用: Activecontrol 设置对象属性 1、每个对象都有属性,可对对象设置属性 属性可以在设计时设置也可在运行时设置,但也有属性是只读的。 设计时修改属性在“属性”窗口中进行 程序代码中,用以下语法进行设置 引用对象 . 属性 = 值 FormSet1.Form1.Text1.Value=DATE() FormSet1.Form1.Text1.ForeColor=RGB(0,0,0) FormSet1.Form1.Text1.BackColor=RGB(192,192,192) FormSet1.Form1.Text1.FontName=“黑体” 2、引用一个对象的多个属性和方法 如:With Thisform.txtxh .backcolor=rgb(128,0,0) .forecolor=rgb(0,0,0) .refresh Endwith 3、引用容器中的多个对象 如:With Thisform .txtXh.backcolor=rgb(128,0,0) .txtXm.backcolor=rgb(0,128,0) Endwith 调用方法程序 方法程序是对象能够执行的一个操作,是和对象相联系的过程。 调用语法: 引用对象.方法程序 FormSet1.Form1.show FormSet1.Form1.SetFocus 有返回值的方法程序以圆括号结尾 可以为对象的方法和事件编写代码,还可在自建的子类中扩展方法集。 响应事件 事件是对对象识别的一个动作,可以编写相应的代码对此动作进行响应。 用户不
文档评论(0)