版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
为什么要使用类?提高代码的重用率提高应用程序的质量提高开发者的效率第7章类的创建和应用1/15/20231VFP6.0类的类型1/15/20232类库VFP基类派生子类子类子类VFP中类的层次VFP的基类:内含在VFP中的表单和控件的缺省定义。子类:引用VFP基类或其他子类建立的新类。类库(.vcx,.vct):用于存放子类的库文件。1/15/20233VFP的类层次1、基类—VFP系统本身提供的类可以从基类直接产生对象也可以由基类派生出子类
1/15/202342、容器类容器类是其他对象的集合容器类中可以包含由其他类派生的对象,并允许访问这些对象容器类可以作为其他对象的父类对象1/15/202353、控件类控件类是单一的对象,不包含其他对象控件类比容器类封装得更完全,在设计和运行时,作为一个独立的对象存在。控件可以包含在容器中,但不能作为其他对象的父类对象。1/15/202367.1创建子类一、设计类的原则VFP具有创建类的功能,允许用户为一些通用的功能创建类。我们可以把经常要使用的对象保存为类,以后只要把基于该类的对象添加到程序中,就可以经常使用它。1/15/20237二、创建子类(1)在“项目管理器”中选择“类”(2)单击“新建”按钮,弹出“新类”对话框(3)在“新类”对话框中可以完成以下工作:1/15/20238在“类名”栏中指定新类的名称在“派生于”栏中为新类指定类型在“存储于”栏中指定被保存的新类的类库名。创建新类示例:创建“退出表单”按钮类1/15/20239例:创建一个按钮类:类名:CMDEXIT父类:CommandButton存储于:JXGL.VCX(类库文件)属性值:Caption:“退出表单”事件代码:Click:ThisForm.Release1/15/202310把“退出表单”命令按钮类加到表单上:在“项目管理器”中选中表单BD6单击“修改”在“表单控件”工具栏上单击“查看类”在弹出的快捷菜单中选JXGL把按钮类CmdExit加到表单中1/15/202311三、为类添加新属性1、新建属性从“类”菜单中选择“新建属性”项在“新建属性”对话框中填入:
名称:属性名称
可视性:公共、保护、隐蔽
说明:有关属性的说明1/15/202312可视性的含义:公共—可在应用程序的任何位置被访问保护—仅能被该类定义内的方法程序或该类的派生类(子类)所访问隐蔽—仅能被该类定义内的成员访问,子类不能引用。1/15/2023132、为新属性设置默认值新属性通常应有一个默认值,如不指定默认值,VFP系统默认为.F.3、为属性创建Access和Assign方法Access方法程序是指在查询属性值时执行的代码Assign方法程序是指更改属性值时执行的代码1/15/202314四、为新类添加方法程序在“类”菜单中选择“新方法程序”在“新方法程序”对话框中填入:
名称:
可视性:公共、保护、隐蔽
说明:最后按“添加”按钮1/15/202315为类添加新属性和新方法例:题目见99年上机试卷VFP2,设计类(1)在类库文件MYLIB.VCX中新建表格子类GRIDA(2)为GRIDA添加两个属性和一个方法(3)设置属性CLMColor1的值为RGB(129,0,0),设置属性CLMColor2的值为RGB(0,129,0)1/15/202316(4)为SETBKCOLOR方法设置如下代码:This.SetAll("DynamicBackColor","IIF(RECNO(This.recordSource)%2=1,This.Clmcolor1,This.ClmColor2)","Column")(5)新建表单FORM1,并在其中添加类GRIDA在数据环境中加入表XS.DBF,并把表格的Recordsource属性设置为XS,在表格的INIT事件中加入代码:THIS.SETBKCOLOR1/15/202317注:
Dynamicbackcolor属性见P197对于以表达式作为设置的属性,它的前面具有等号(=)见p174;SETALL方法见P177、P1971/15/202318五、查看和设置类信息从“类”菜单中选择“类信息”,打开“类信息”对话框:为类指定设计时的外观修改和删除类的属性和方法程序1/15/202319六、在设计表单时将表单和控件保存为类在“表单设计器”中,从“文件”菜单中选择“另存为类”在“另存为类”对话框中的“保存”区域中指定保存为类的范围在“类定义”区域内,指定类名、类库文件单击“确定”按钮1/15/2023207.2管理类和类库1、在项目管理器中管理类和类库添加移去复制删除重命名1/15/2023212、在类浏览器中管理类和类库在“工具”菜单中选“类浏览器”,或在“命令”窗口中键入DO(_BROWSER)可打开类浏览器窗口,见P219,图7-91/15/2023227.3类的应用一、添加类到表单1、从项目管理器中拖放类到表单2、注册可视类库(频繁使用的类)在“工具”菜单中选“选项”在“选项”对话框中选“控件”选择“可视类库”按钮,单击“添加”在“打开”对话框“中选择类库文件1/15/2023233、将类控件显示在“表单控件”工具栏中如果类库已注册,则单击“表单控件”工具栏中的“查看类”按钮,将显示下拉菜单,从中可选择类库如果类库未注册,可单击“表单控件”工具栏中的“查看类”按钮,选择“添加”选择类库文件,即可使用该类库中的类,同时该类库也在系统中注册。1/15/2023244、指定数据库表的字段的默认类为了方便地将表中字段添加到表单,可以为数据库表的字段设置默认类。一旦指定,每次将该字段加入表单时,表单控件将使用指定的默认类。方法:在表设计器中的“显示库”和“显示类”框中选择类库和类1/15/2023255、指定字段数据类型映像到类如经常改变字段的库和类,可将字段数据类型映像到库和类中。建立映像后,当将字段拖放到表单中,系统将创建相应的控件。方法:在“工具”菜单中选“选项”对话框,选择“字段映像”选项卡。(图7-13)注意:字段数据类型映像类的优先级低于字段的默认类1/15/2023266、指定表单和表单集的模板类在VFP中,还可以为表单或表单集本身指定类。在创建表单或表单集时,系统默认以Form和FormSet基类为模板,可以指定自定义类作为模板。方法:在“选项”对话框中,选“表单”选项卡在“模板类”区域中,为表单或表单集指定类。(P223图7-14)1/15/202327二、覆盖默认属性设置基于用户自定义类的对象添加到表单后,未被保护的属性可以被修改、覆盖被保护的属性不能被修改、覆盖,在属性窗口中以斜体显示1/15/202328三、调用父类方法程序代码父类的方法代码可以在其以下的各级程序代码中使用,调用父类的方法程序应使用函数DODEFAULT()或作用域操作符::(见P223)1、在类库Jxgl中创建新类MYFORM,其CLICK事件代码为:thisform.backcolor=rgb(0,255,255)1/15/2023292、创建新表单BD在新表单中加入类myform,在myform上加入按钮组,含有3个按钮,第一个按钮的CLICK代码为:thisform.backcolor=rgb(255,255,0)第二个按钮的CLICK代码为:thisform.backcolor=rgb(255,0,255)1/15/202330第三个按钮的CLICK代码为:MYFORM::CLICK其作用就是调用父类的方法程序代码,表单背景为兰色。演示表单BD注意:域作用符“::”与Dodefault()函数的区别。P2241/15/2023319.2、创建自定义工具栏类(P264)自己定义一个工具栏,包含常用的按钮,可以添加到不同的表单中,方便地使用。1/15/202332创建自定义工具
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五版房屋买卖合同中的税费分担约定3篇
- 二零二五版电力工程监理劳务分包合同范本2篇
- 基于2025年度预算的网络营销与电商平台建设合同3篇
- 二零二五年度餐饮行业特色农产品配送与扶贫合作合同3篇
- 二零二五版二手房定金交易合同范本2篇
- 二零二五年环保净化设备销售与排放监测合同2篇
- 二零二五年船舶制造车间通风除尘系统合同3篇
- 物业管理委托合同2025年度版18篇
- 二零二五年网络安全风险评估与整改服务合同规范文本283篇
- 全新2025年度体育用品生产加工合同:体育用品设计公司与制造商之间的生产加工协议3篇
- 历史-广东省大湾区2025届高三第一次模拟试卷和答案
- 2024年安全生产法律、法规、标准及其他要求清单
- 2023年高考文言文阅读设题特点及备考策略
- 抗心律失常药物临床应用中国专家共识
- 考级代理合同范文大全
- 2024解析:第三章物态变化-讲核心(原卷版)
- DB32T 1590-2010 钢管塑料大棚(单体)通 用技术要求
- 安全行车知识培训
- 2024年安徽省高校分类对口招生考试数学试卷真题
- 第12讲 语态一般现在时、一般过去时、一般将来时(原卷版)
- 2024年采购员年终总结
评论
0/150
提交评论