vfp下第一讲_面向对象.ppt_第1页
vfp下第一讲_面向对象.ppt_第2页
vfp下第一讲_面向对象.ppt_第3页
vfp下第一讲_面向对象.ppt_第4页
vfp下第一讲_面向对象.ppt_第5页
已阅读5页,还剩31页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1,数据库应用(下)(VFP6.0),崔莅凯 cuilikai618729),2,课程介绍,介绍Viusal FoxPro中基本的程序设计方法,数据库技术,面向过程程序设计,和面向对象的程序设计的课程。 VFP课程安排 数据库应用上 大一下 数据库应用下 大二上 计算机综合 大二下 浙江省高校计算机等级考试-二级VFP 每年的四月和十月,3,课程介绍,数据库应用下 学习内容:第三、五、六、七章 总成绩=平时成绩+期中上机+期末上机+期末笔试 平时成绩依据:出勤+作业(上机作业和课后作业) 平时成绩基准分为100,一次旷课或一次未交作业平时成绩扣10分,4,第3章 程序

2、设计基础,3.1 Visual FoxPro应用程序设计概述 3.2 程序文件设计 3.3 可视化界面与事件过程设计,5,3.1 Visual FoxPro应用程序设计概述,3.1.2 VFP程序设计方法 VFP将过程化程序设计与面向对象程序设计结合在一起,为用户创建功能强大灵活多变的应用程序提供了方便、实用的程序设计后台支持。 面向过程程序设计方法 面向对象程序设计方法,6,3.1 Visual FoxPro应用程序设计概述,3.1.2 VFP程序设计方法 1.面向过程程序设计方法 面向过程程序设计方法,是将应用程序目标系统的整体功能进行分解,自顶向下不断的把复杂的处理分解为子处理,这样一层

3、一层地分解下去,直到仅剩若干个容易处理的子处理为止。 这种结构分析和结构设计是围绕实现“过程”来构造系统的。 2.面向对象程序设计方法 面向对象的程序设计方法有些象使用集成电路(IC)构造计算机硬件一样,各个部件都是相对封闭独立的,部件之间的连接与通信通过对外接口实现。所以可以将面向对象的程序设计方法视为“软件IC”,它的软件部件的内部结构紧密,有自己的私有数据和操作方法,而与外界的沟通是通过传递信息来完成的。,上学期 的学习 内容,本学期 的学习 内容,7,面向对象程序的特点,面向对象程序是事件驱动的。 面向对象程序具有界面。,8,3.1 Visual FoxPro应用程序设计概述,3.1.

4、3 VFP程序编程机制 2.程序文件,9,3.1 Visual FoxPro应用程序设计概述,3.1.3 VFP程序编程机制 3.事件驱动的可视化界面的事件过程代码,10,对象,面向对象的软件系统是由对象组成的,软件中的任何元素都是对象,复杂的软件对象由相对简单的软件对象组合而成的。 对象画面标注说明 P128图3.41,这些对象 将在第五章 详细介绍,11,如何描述对象?,属性(数据)用来描述对象的特征。 例如 一位同学A1 他的姓名是张小强,男生,出生于1990-1-1,身高175cm,爱好篮球、旅游,学习英语专业。 一个按钮A2 它的宽度100 高度50 在窗口中位置是(150,300)

5、 显示文字为计算 一个按钮A3 它的宽度100 高度50 在窗口中位置是(250,300) 显示文字为退出 对象可以执行某些操作,这就是对象的方法。 例如 A1同学可以写作业、打篮球、改变自己的爱好 窗口对象可以关闭自己 列表框对象可以给自己添加或删除数据项。,12,对象的属性、方法、事件,将所有对象都划分为各种对象类(class),每个对象类都定义了一组属性(数据)和方法(操作),也就是每个对象都有属于自己的特征和自己能实现的功能。 属性:是对象中所定义的数据,用来描述对象。 方法:是对象所能执行的操作。方法实际上是一段能完成特定操作的程序代码。 事件:是某个特定时刻所发生的事情。事件是瞬间

6、完成,没有持续时间的概念。事件可以由系统触发,也可以由用户触发。,13,四个最常用的对象与它们各自的属性、方法、事件,FORM (窗体) 属性:caption 指定窗体的标题 方法:release 关闭窗体(P136) LABEL(标签) 属性:caption 指定标签的文本内容 TEXT(文本框) 属性:value 指定文本框中的文本内容(默认字符型) 事件:valid 对象失去焦点前发生的事件 COMMAND(按钮) 属性:caption 指定按钮上显示的文本内容 事件:click 当用鼠标单击按钮时发生的事件,在按钮上按下并释放鼠标左键,常用来判断文本框输入数据是否有效,14,3.3 可

7、视化界面与事件过程设计,面向对象程序的基本步骤: (1)创建或选用适合自己问题需要的若干对象。 (2)将各个对象组装在一起并通过对象固有属性的设置完成部分功能及界面设计。 (3)根据操作需要选择对象提供的事件并将控制操作的程序代码写在对应事件中。 注意: (1)窗口作为程序运行界面,信息接收和显示都使用对象,所以不再使用input、accept、wait 、 ?、? 这样的输入、输出语句。其它代码可以使用。 (2)掌握常用的对象,以及它们的属性、方法、事件。 (3)代码写在哪?写在某个对象的某个事件中。当事件发生时,事件中的已写好代码就执行了。,学习对象和它们的属性、方法、事件,学习对象型数据

8、的语法规则,15,表示对象和对象的属性、方法,表示对象时,一般要先指出对象所在的容器,一般这个容器就是表单。用容器.对象的方式表示对象。 使用对象的属性或方法时,以容器.对象.属性或容器.对象.方法的格式进行。,16,要掌握的关键字(P130),THIS:该对象 THISFORM:包含该对象的表单 例1:表示表单form1上的文本框text1对象: Thisform.text1 例2:表示表单form1上的文本框text1对象的value属性: Thisform.text1.value,17,面向对象语法,属性和变量类似,可以为属性赋值或者使用已有的属性值。 例1:将字符串张小强赋值给变量a1

9、 例2:将字符串张小强赋值给text1对象的value属性 方法和命令类似,可以直接执行对象命令 例3:输出变量a1的值 例4:关闭窗体 将属性值赋给某个变量: 变量=容器.对象.属性 设置属性的语法:容器.对象.属性=表达式 执行对象的方法:容器.对象.方法名,a1=张小强,Thisform.text1.value=张小强,? A1,Thisform.release,18,3.3 可视化界面与事件过程设计,3.3.3表单文件的创建与运行 表单(或表单集)的两个扩展名: 表单文件(.SCX):表单文件是一个具有固定表结构的表文件,用于存储生成表单所需的信息项。 表单备注文件(.SCT):表单备

10、注文件是一个文本文件,用于存储生成表单所需的信息项中的备注代码。 注意:只有当表单的两个文件同时存在时,才能执行表单。调用运行表单时,可以只打开扩展名为.SCX的表单文件即可。,19,3.3 可视化界面与事件过程设计,3.3.3表单文件的创建与运行 1.创建表单 (1)新建一个表单 新建、表单、新建表单。 CREATE FORM 。 (2)向表单中添加控件。 2.保存表单 3.运行表单 (1)以交互方式运行表单。 (2)从程序中运行表单。,20,3.3 可视化界面与事件过程设计,3.3.1面向对象程序设计简介 例3.4编制一个抽奖程序,可以完成对表文件中预定内容的多次不重复随机抽取操作并提供相

11、应的操作界面。 1.操作界面及控件的选用 2.主要控件说明 P135表3.1 3.设计步骤 4.属性设置与事件过程代码,21,3.3 可视化界面与事件过程设计,3.3.1面向对象程序设计简介 例3.4编制一个投奖程序,可以完成对表文件中预定内容的多次不重复随机抽取操作并提供相应的操作界面。,表单,文本框,命令按钮,计时器,22,3.3 可视化界面与事件过程设计,3.3.3表单文件的创建与运行 例3.6实现表单界面顶行的标签信息自动向下平移(每隔0.1s)。,top=top+1,计时器静止,0.1s时,表单的高度,标签的高度,top=thisform.height-thisform.label1

12、.height(此时,计时器关闭,平移停止。),23,3.3 可视化界面与事件过程设计,3.3.4类与对象 1.类与对象 对象:是属性值和操作的封装体。 类:是对具有相同数据和相同操作的一组相似对象的定义。也就是说,类是具有相同属性和行为的一组相似的对象的抽象。 2.VFP中的类:分为容器类和控件类。P145图3.47 3.容器与控件 (1)容器:可以包含其他对象,并且允许访问这些对象(如表单、表格、页框 、命令按钮组和选项按钮组等)。 (2)控件:作为一个单一而独立的部件出现的(如命令按钮、选项按钮、文本框、列表框和编辑框等)。 控件类的封装比容器类更为严密。,24,3.3 可视化界面与事件

13、过程设计,3.3.5对象的属性、事件与方法 2.引用对象 绝对引用对象 P130 相对引用对象 P130 相对引用对象的属性和关键字: Parent:该对象的直接容器 THIS:该对象 THISFORM:包含该对象的表单,25,3.3 可视化界面与事件过程设计,3.3.5对象的属性、事件与方法 3.设置属性 既可以在运行时(动态),也可以在设计时(静态)对对象的属性进行设置。 显示属性窗口的两种方法: 从显示菜单中选择属性。 单击属标右键从快捷菜单中选择属性。 (1)在属性窗口中设置属性。 设置常量值属性。 设置表达式属性。,26,3.3 可视化界面与事件过程设计,3.3.5对象的属性、事件与

14、方法 (2)在程序代码中设置属性。p133 设置单个属性 设置属性的语法:容器.对象.属性=属性值 设置多个属性 WITH . ENDWITH 对组中或容器对象中的多个控件设置属性。 采用循环一次同时设置多个控件属性的方法。,27,3.3 可视化界面与事件过程设计,3.3.5对象的属性、事件与方法 4.事件与方法过程代码 事件是用户的行为,也可以是系统行为。当系统响应用户的一些动作时,自动触发事件过程代码。 方法程序是和对象联系的过程,只能通过程序以特定的方式激活。 注意:可以自己定义新的方法,但不可以自己定义新的事件。 编辑事件或方法程序采用的步骤: (1)进入代码编辑窗口: 从“显示”菜单

15、中选择“代码”选项。 在属性窗口中选择事件或方法名再双击。 直接双击某个控件。 (2)在“过程”框中选择事件或方法程序;在编辑窗口键入代码。,28,3.3 可视化界面与事件过程设计,3.3.5对象的属性、事件与方法 4.事件与方法过程代码 事件过程中的代码在事件发生时才自动执行的。也可以像调用方法过程代码那样调用与一个事件相关联的过程代码,不过这种调用并不使事件发生。 Thisform.release Tmand1.click,29,3.3 可视化界面与事件过程设计,3.3.6表单文件示例 例3.7编制一个表单文件实现口令验证功能。 1.创建步骤 创建表单文件 添加控件对象 设置控件对象的相关

16、属性 选择控件对象的事件编写操作所需的过程代码 2.控件对象的事件过程代码 Form1.Init Text1.valid Command.click P155例3.8编制一个表单文件实现收费找零功能。,30,两个例子,例1:我的第一个程序:输入用户名字,显示“你好,这是*的第一个程序!” 面向过程方法 面向对象方法,31,例1:我的第一个程序,面向过程方法,set talk off clear accept 请输入你的姓名: to xm ?这是+xm+的第一个Visual Foxpro程序! set talk on,32,例1:我的第一个程序,面向对象方法 界面设计 属性设置 form1的ca

17、ption为我的第一个表单 Label1的caption为请输入你的姓名 Command1的caption为退出 代码设计 Text1对象的valid事件 thisform.text1.value=这是+allt(thisform.text1.value)+的第一个面向对象程序!“ Command1对象的click事件 Thisform.release,label1,text1,command1,33,两个例子,例2:求圆面积,输入圆的半径,计算圆的面积。要求输入半径必须大于0. 面向过程方法 面向对象方法,34,例2:求圆面积,面向过程方法,CLEAR INPUT 请输入圆的半径: TO R if R0 S=PI()*R*R ? 半径为 +allt(str(R,10)+的圆面积为:+allt(str(S,20,2) else ?输入有误! endif,35,例2:求圆面积,面向对象方法 界面设计,属性设置 Form1的caption为“计算圆面积” Label1的caption为请输入圆的半径: Label2的caption为

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论