第-十-一-章面向对象程序设计(改)课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《第-十-一-章面向对象程序设计(改)课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 面向 对象 程序设计 课件
- 资源描述:
-
1、本章要点本章要点1.1.类、对象、对象的属性、方法、事件类、对象、对象的属性、方法、事件2.2.表单的基本设计方法表单的基本设计方法3.3.常用控件的功能和使用方法常用控件的功能和使用方法4.4.常用控件的属性、事件常用控件的属性、事件5.5.方法程序的编写方法程序的编写面向对象编程是目前主流的程序设计方法,通过抽象思维的方式,把日常生活中常见的问题简化成人们易于理解的模型,然后在这些模型上建立关系,从而最终形成一个完整的系统。以对象为核心,主要考虑如何创建对象,并利用对象来简化程序设计。面向对象的程序设计1面向过程结构化程序设计:设计方法:自顶向下,按步骤分解开发过程:做什么到如何做,它强调
2、代码的功能是 如何实现优点:结构性强,便于设计和理解2面向对象程序设计:设计方法:从抽象到具体,按功能分解开发过程:用什么做到做什么,它将大量的工作由 相应的对象来完成,程序员只需要说明 对象完成的具体任务。优点:1、简化程序设计,提高程序代码的可重用性 2、更接近现实世界,降低开发和维护的费用 3、可以和各种模型自然的融合结构化程序设计1、开始2、黑棋走3、绘制画面4、判断胜负5、白棋走6、绘制画面7、判断胜负8、返回步骤29、显示最后结果面向对象的过程设计1、确定功能模块将游戏分为棋子、棋盘、规则系统2、第一类对象(棋子)接收用户输入,并告知第二类对象(棋盘)当前布局的变化,棋盘对象接收到
3、了棋子的变化后,在屏幕上面显示出这种变化;同时利用第三类对象(规则系统)来对棋局进行判定。例:五子棋游戏11.1 面向对象程序设计概念11.1.1 面向对象程序设计特点面向对象程序设计特点1.符合人们习惯的思维方法,即由抽象到具体、2.由简单到复杂这一循序渐进的过程,便于分析3.和解决复杂的应用问题。2.易于软件功能的维护和软件的持续性开发。3.利用继承的方式缩短程序开发周期,提高 程序设计效率。4.与可视化技术相结合,改善了软件开发时 的工作界面。11.1.2 类与对象类(Class)现实世界中,把具有相似特征的事物归为一类。类是概括客观事物的基本特征及事物外观和行为的模板。对象(Objec
4、t)现实世界中,凡是有意义的、与所要解决问题有关系的任何事物,都可以称作对象。万物皆对象。类与对象的关系:类是具有相同属性和行为的对象的抽象,是创建对象的模板。对象是类的实例;是OOP的核心。类:狗属性:毛皮颜色.方法:吃饭();睡觉();吠叫().对象:小Q属性:金色.方法:小Q.吃饭();小Q.睡觉();小Q.吠叫().VFP中的类与对象:类是创建对象实例的模板,是同种对象的集合与抽象。在VFP中对应于表单控件工具栏中的按钮。对象是类的实例,是具有属性(数据)和方法(行为方式)的实体。在VFP中对应于表单中利用控件工具按钮创建的各个具体对象。命令按钮(类)命令按钮(对象)11.1.2.4
5、类的特征1)子类:由其他类派生的类叫子类。父类:一个类可以派生多个子类的,称为父类。说明:一个子类可以拥有其父类的全部功能。2)继承性:指子类除具有父类的所有特性外,还能根据 需要对属性和方法进行修改或添加。3)封装性:指将数据和数据处理的方法包装在一起。将 方法的具体执行步骤、所需数据等隐藏起来,无需用户关心。4)多态性:同样的方法对于不同的类而言,具有不同的 实现。狗拉布拉多哈士奇.苏格兰牧羊犬导盲()拉雪橇()牧羊()吃饭();睡觉();吠叫().11.1.2.5 类的类型类可以分为基类和用户自定义类。VFP系统提供的类叫基类。VFP的基类有两种:容器类和控件类。基基 类类自定义类自定义
6、类类类控件类控件类容器类容器类11.1.2.6 类的层次结构 见书(P275)容器类:可以包含其他类的基类。将容器类的对象加入表单后,无论在设计时还是在运行时,既可以将该容器类的对象作为一个整体进行操作,也可分别对其包容的对象进行处理。控件类:可以包含在容器类中,但不能包含其他对象的类.如:表单是容器类 标签、文本框、命令按钮是控件类11.1.3 对象的属性、方法和事件1.对象的属性属性(property):本质是在类中声明的变量。是描述对象的参数,用来表示对象的特征和状态。设置属性的方法:编程方式、属性窗口编程方式(在程序执行过程中进行设置)设置对象属性的一般命令格式:表单名.对象名.属性名
7、=属性值为对象设置多个属性的命令格式:With Parent.对象名 .属性名=属性值 EndWithVFP中的操作符(P279)1)点操作符:在一个对象、属性、方法或事件之前 使用。例如 Thisform.label1.caption=“面向对象程序设计”Thisform.text1.value=10 Thisform.release2)This:表示当前对象例如 Tmand1.caption=“退出”This.readonly=.t.3)Thisform:表示当前表单4)ThisformSet:表示当前表单集属性窗口设置初始状态对象名称框选定的属性只读属性函数按钮属性设置框对属性的说明2.
8、对象的事件事件(event):由VFP事先定义好的、能被对象识别的动作,即系统或用户对某个对象所做的操作。例:Click、Dbclick、Load、MouseUp 等事件过程(Event pfrocedure):即程序代码。为处理特定事件而编写的一段程序,是对象对事件的响应。说明:只需要为表单中用到的事件编写事件代码。例:表单运行时设置表单标题为“圆面积”编写form1的load事件的程序代码:Thisform.caption=“圆面积”选择表单双击打开代码编辑窗口选择事件选择对象代码编写区Thisform.caption=“圆面积”事 件说 明Load表单或表单集加载时Init创建对象时(初
9、始化)Destroy从内存释放对象时Click鼠标单击对象时DblClick鼠标双击对象时RightClick右击对象时GotFocus当对象获取焦点时常用事件事 件说 明Unload从内存中释放表单或表单集时LostFocus当对象失去焦点时KeyPress当按下并释放某个键时MouseDown在对象上按下鼠标键时MouseMove在对象上移动鼠标时MouseUp在对象上释放鼠标键时UpClick用户单击控制的向上箭头时3.对象的方法方法(Method):用以描述针对发生的事件,对象的响应。反映对象的功能。一般而言,一个方法描述了对象可以执行的一个操作。其代码是与对象相关联的过程,称为方法程
10、序。是系统专为对象设计的子过程。方法的调用方式:对象名.方法名例如 Thisform.refresh Thisform.release常用方法:Refresh方法:重画表单或控件,并刷新所有值Release方法:从内存中释放表单或表单集SetFocus方法:为一个控件指定焦点焦点:是接收用户鼠标或键盘输入的能力。当控件具有焦点时,才能接收用户的输入。Quit方法:结束一个实例,返回到创建实例的 应用程序。Reset方法:重置计时器控件,让它从 0 开始。一盏台灯 对象台灯的特征:功率、大小、品牌、样式、价格、质量等 属性对台灯的操作:打开、关闭等 事件台灯的功能:照明 方法11.1.5 事件驱
11、动程序设计1.程序的执行由事件驱动。程序代码是为对象或对象的事件编写,程序代码的执行总是由某个事件的发生而引起。2.程序启动后根据发生的事件执行相应的事件程序,如无事件发生,则空闲等待事件发生,直到遇到程序或表单的结束语句。面向对象程序执行步骤:1)启动应用程序,装载表单和显示表单2)表单或表单上的控件等待事件发生3)事件发生时,执行对应的事件过程4)重复执行 步骤 2 和 35)遇到使程序结束的语句时结束程序运行 (关闭表单)11.2 表单设计11.2.1.1 一对一表单向导使用表单向导创建一对一表单的步骤如下:1、从“文件”菜单,选择“新建”、“表单”,然后在新建对话框中选择向导,在向导选
12、取对话框中使用鼠标选择“表单向导”。2、单击确定按钮进入“表单向导”步骤一。3、确定表单的数据源。然后进行字段选取。4、选择好表单样式及按钮类型。5、按照每组记录的排序顺序选择字段。6、选择建立好表单后的存储方式,“完成”。11.2.1.2 一对多表单向导11.2.1.3.表单设计器与表单控件工具栏设计方法:1、明确创建表单的目标、表单应具备的功能、用途 在表单中添加与此相关的控件。2、为表单及其控件设置好与之匹配的数据环境及数据 源。3、为表单中的每一个控件做恰当的属性设置。4、选择与对象、目标相关的事件,设计好事件触发的方法程序代码。表单控件工具栏标签编辑框命令按钮组复选框列表框表格容器线
13、条ActiveX控件计时器文本框命令按钮选项按钮组组合框微调控件图像形状ActiveX绑定控件页框 设置数据环境什么是数据环境:数据环境:依附于表单存在,随表单的打开自动打开;是表单中各对象的数据来源。打开数据环境设计器的方法:在创建表单或已有打开表单的情况下,可从“显示”菜单中;也可在表单快捷菜单中;还可以在表单任意空白位置右击,选择“数据环境”。数据环境中的主要属性属属 性性说说 明明默认设置默认设置AutoCloseAutoCloseTablesTables当释放表或表单集时当释放表或表单集时,是否关闭表或视图是否关闭表或视图“真真”.T.T.AutoOpenAutoOpenTables
14、Tables当运行表单时当运行表单时,是否打是否打开数据环境中的表或开数据环境中的表或视图视图“真真”.T.T.InitialSelecInitialSelectedAliastedAlias当运行表单时选定的当运行表单时选定的表或视图表或视图若无指定若无指定,在运行在运行时首先加到时首先加到”数数据环境据环境”中的临中的临时表最先被选定时表最先被选定向数据环境添加、移去表或视图添加:1)从”数据环境”菜单中选择”添加”命令2)在”添加表或视图”对话框中,从列表中选择表 或视图移去:1)在数据环境设计器中选择要移去的表或视图2)从”数据环境”菜单中选择”移去”命令数据环境中表间关系的设置与编辑
15、表在数据库中设置的永久关系会自动添加到数据 环境中。在数据环境设计器中,将字段从主表拖曳到与子 表的字段或索引标识上。11.2.6 设置属性 P290 表11-6对象属性的初始化用表单属性窗口设置。表单运行时,对象的属性用命令方式设置。11.2.7 代码编辑窗口常用的窗口打开方法:1)双击表单或对象2)选择右键菜单中的”代码”命令注意:在编写事件代码之前,首先必须选对事件。步骤:分析表单应实现的功能创建表单,设置外观根据需要设置数据环境在表单上添加所需对象,合理调整布局设置对象属性初值选择对象的事件,为对象编写程序代码11.2.9-10 表单的保存和运行注意:表单文件(.scx)备注文件(.s
16、ct)11.2.8 表单程序设计编写一个计算圆柱体体积的程序1.选择控件 确定要用到的类2.建立用户界面(界面布局)创建对象3.设置对象的属性 初始化对象属性4.选择对象事件过程及编程 创建对象的事件和方法5.保存、运行表单例 建立一个表单,要求按下“不显示”按钮不放,文字将被隐藏,同时按钮标题变成“显示”;松开按钮,文字将重新显示出来,同时按钮标题变成“不显示”。编写一个滚动字幕程序(P94)1.分析题意,选择控件 1个标签、2个命令按钮、1个计时器2.设计用户界面3.设置对象的属性 caption、fontsize、interval4.选择对象事件过程及编程 click、timer5.保存
17、、运行表单11.3 表单中的对象例:建立一个表单,浏览学生情况思考与练习:建立一个表单,可以将输入的字母转换为大写或小写显示。几个容易混淆的事件发生顺序:初始化 Load(加载数据源和表单)Init(建立对象实例和成员:先控件后容器)Destroy(释放对象实例和成员)Unload(卸载数据和外部引用)结束运行表单设计小结(一):name和caption属性的区别 数据环境中建立表间关系的方法与查询设计器中的建立方法相同。当为控件设置数据源后,若数据源表中的指针发生移动,其变化需要体现到表单上时,通常要使用 thisform.refresh 进行刷新。VFP默认将先添加进数据环境的表在当前工作
展开阅读全文