第8章 面向对象程序设计.ppt_第1页
第8章 面向对象程序设计.ppt_第2页
第8章 面向对象程序设计.ppt_第3页
第8章 面向对象程序设计.ppt_第4页
第8章 面向对象程序设计.ppt_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

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

文档简介

第8章面向对象程序设计 福建农林大学东方学院 8 1面向对象程序设计的基本要素 5个基本概念 P 190 P 192 一 对象1 控件对象是表单上显示数据和执行操作的基本对象 例如 命令按钮 文本框 标签等 2 容器对象可以容纳其他对象的对象 例如 表单 选项按钮组等 8 1 二 属性对象的属性用来表示对象的特征 状态 例如 一个命令按钮在表单上的位置可以用它的属性Left Top表示 它的大小用Width和Height属性表示 它上面的文字和前背景色等都可以用相应的属性表达 8 1 三 方法对象的方法用来表示对象的行为 它由对象内定的通用过程来实现 方法所包含的程序对用户是透明的 不可见的 用户只需要了解对象的方法名及方法功能 遵循一定格式调用它 便可完成希望的行为 例如 为了使当前运行表单释放 可以调用表单的Release方法实现 代码为THISFORM Release 8 1 四 事件每个对象都可以对一个被称为事件的动作进行识别和响应 事件是一种预先定义好的特定动作 可由用户或系统触发 例如 对命令按钮单击鼠标则触发了命令按钮的Click事件 将表单装入内存则由系统触发了表单的Load事件 在表单上按住鼠标左键并拖放 则按序触发了表单的MouseDown MouseMove MouseUp事件 8 1 五 事件驱动的工作方式VFP总是处于等待事件发生的状态 某事件一旦被触发 系统就去执行该事件对应的过程 当然事件过程的代码需要用户事先编写好 过程执行完毕 则系统又处于等待状态 这种工作方式被称为事件驱动的工作方式 VFP的事件总是在不断地发生 但只有被编写了代码的事件才会产生某种操作 否则事件只是发生 不会造成对象的任何变化 8 2用表单设计器设计表单 使用表单设计器来创建数据表单 建立用户的操作界面 而且在设计时立刻就能看见其中各对象显示在用户面前的外观 也可以使用表单设计器来修改已有的表单 VFP6 0提供的表单设计器功能强大 使得设计表单的工作变得又快又容易 8 2 1打开表单设计器 方法1 在项目管理器环境下 1 在 项目管理器 中 选定 表单 并选择 新建 系统弹出 新建表单 对话框 2 在 新建表单 对话框中 选择 新建表单 按钮 屏幕显示新的空表单的 表单设计器 窗口 方法2 菜单方式调用 1 单击 文件 菜单中的 新建 命令 打开 新建 对话框 2 选择 表单 文件类型 然后单击 新建文件 按钮 8 2 1打开表单设计器 8 2 2表单设计器包含的设计工具 1 表单设计器窗口与表单窗口 其中表单设计器窗口中的Form1窗口即表单对象 多数设计工作将在表单窗口中完成 包括往上添加对象 并对各个对象进行操作与编码 2 属性窗口 可以完成对象属性的设置与修改 3 代码编辑窗口 供用户编写事件或方法的程序代码 4 各种工具栏 表单设计器工具栏 该工具栏可用于显示或隐藏除表单窗口以外的窗口与除它自己以外的工具栏 表单控件工具栏 用于在表单上创建对象 调色板工具栏 用于指定一个对象的前背景色 布局工具栏 用于对齐 调整表单上各对象的划 与位置 8 2 2 5 数据环境设计器窗口 创建或修改表单数据环境 6 快捷菜单 不同对象有不同的快捷菜单帮助完成经常性工作 7 动态菜单 表单设计器打开后 VFP主菜单增加 表单 菜单 显示 菜单也增加若干子项 窗口 菜单与 格式 菜单也都有相应的变化 打开表单后上述所有窗口与工具栏并非全部显示 用户可利用表单设计器工具栏或 显示 菜单的各子菜单 根据需要显示或隐藏相应窗口或工具栏 而要打开对象快捷菜单 只需在该对象上单击鼠标右键即可 8 3使用表单设计器创建表单 打开表单设计器 设置数据环境 添加对象 调整对象的位置 设置对象属性 编写事件代码 保存 执行表单 对于与数据库或自由表中数据无关的表单 可省略设置数据环境环节 例8 1 为STUDENT DBF表创建如下图所示的表单 以实现记录的翻页浏览与编辑 1 打开表单设计器 运行 2 设置数据环境 数据环境是表单的数据来源将鼠标指向 表单设计器 的空白处 单击右键拉出快捷菜单 从快捷菜单中 选择 数据环境 命令 当激活 数据环境设计器 窗口时 在菜单栏中 显示 数据环境 菜单项 在菜单项中有添加 移去和浏览等操作命令 1 向数据环境中添加 移去表或视图 1 如果添加表或视图 在 数据环境设计器 空白处中 单击右键 在拉出快捷菜单中 选择 添加 命令 屏幕显示 添加表或视图 对话框 2 选择表或视图 单击 添加 按钮 然后再单击 关闭 按钮 屏幕显示 数据环境设计器 窗口 3 如果要从 数据环境设计器 窗口中移去表 先选择要移出的表或视图 然后在 数据环境 的子菜单中 选择 移去 命令 或单击右键 在快捷菜单中 选择 移去 命令 或按Del键 2 设置数据环境 2 设置数据环境 2 在数据环境中设置关系数据库表之间的永久关系将自动地加到数据环境中 在 数据环境设计器 中 设置临时关系的操作步骤是 将字段从主表拖动到相关表中的相应字段上 就创建了关系 表之间的关系以一条连线表示 用鼠标单击可选择关系 3 向表添加字段 字段映像功能 选择所需要的字段 用鼠标左键拖到空白表单的适当位置 系统即自动把表中的所有字段全部按行或列排在窗口表单中 根据需要 也可以逐个拖动字段到表单中 2 设置数据环境 例8 1 依上图 选择所需要的字段 用鼠标左键拖到空白表单的适当位置 3 对象的添加 根据实际需要 利用 表单控件 工具栏 可以向空表单中添加各种控件 打开表单设计器后 单击表单控件工具栏的某控件按钮 然后再单击表单窗口某处 该处就会产生一对应对象 例8 1 依上图 单击表单控件工具栏的命令按钮控件 单击表单的对应位置 创建Commandl对象 依照此方法再创建其余两个命令按钮Command2 Command3 4 调整对象的位置 调整控件的大小和对齐控件 用 布局 工具栏 或 格式 菜单的 对齐 命令和 大小 命令 进行对齐或调整控件的大小 5 设置对象的属性 VFP中提供了一个属性窗口 该窗口能显示当前对象的属性 事件和方法程序 并允许用户更改属性值 定义事件代码和修改方法程序等 属性窗口包括对象组合框 选项卡 属性设置框 属性列表框 属性说明信息框 5 设置对象的属性 在 例8 1 中ControlSource属性的设置是由VFP的字段映像功能自动完成的 例如 txt学号 文本框对象的ControlSource属性值为 学生 学号 其他对象属性的设置见下表 6 事件代码的编写 编写事件代码先 具体步骤如下 1 双击该对象 2 选定该对象的快捷菜单的 代码 命令或显示菜单的 代码 命令 3 双击属性窗口 方法程序 选项卡的任一事件或方法 代码编辑窗口中包含两个组合框和一个窗口 对象组合框用来重新确定对象 过程组合框用来确定所要的事件 或方法程序 代码则在窗口中输入 表8 4 P183 列出了VFP部分常见的事件 6 事件代码的编写 例8 1 中Command控件的事件编写代码 Commandl的Click事件代码 IfRecno 1Skip 1THISFORM RefreshELSEMessagebox 本页是首页 Endif 6 事件代码的编写 例8 1 中Command控件的事件编写代码 Command2的Click事件代码 IfRecno Reccount SkipTHISFORM RefreshElseMessagebox 本页是末页 Endif 6 事件代码的编写 例8 1 中Command控件的事件编写代码 Command3的Click事件代码 THISFORM Release说明 THISFORM指包含当前对象的表单 即Form1 这是一种相对引用写法 在VFP中常使用这种写法引用表单 7 保存表单 表单设计或修改完毕要存盘 方法如下 保存表单而不退出表单设计器 选择 文件 菜单 保存 命令 若是新创建的表单要输入文件名 保存表单并退出表单设计器 按Ctrl W键或单击表单设计器的关闭按钮 若是新创建的表单要输入文件名 表单文件保存后 将产生扩展名为 SCX的表单文件及扩展名为 SCT的表单备注文件 8 执行表单 方法1 表单设计器未关闭时 表单快捷菜单的 执行表单 命令可运行表单 若此时表单尚未存盘 系统还会要求保存表单 若表单被修改过 系统也征询是否存盘 方法2 用命令DOFORM表单名 SCX 方法3 在项目管理器中选定要执行的表单 选定 运行 按钮 8 4VFP的事件代码编写 VFP的事件代码由VFP命令 属性设置语句 方法与事件的调用语句构成 一 在容器分层结构中引用对象 1 对象的容器层次VFP的对象分为容器类和控件类 并规定 在容器分层结构中引用对象必须提供对象的地址 即指明它相对于容器分层结构的关系 2 对象相对引用规则VFP为方便在容器分层结构中引用对象 提供并规定了一些关键字及引用格式 THIS引用该对象THISFORM引用包含该对象的表单THISFORMSET引用包含该对象的表单集PARENT引用包含该对象的直接容器 3 引用格式引用关键字 对象名 对象的属性 事件或方法程序 1 引用可以是单级的 例 THIS Caption 引用本对象的Caption属性THISFORM Refresh 引用包含本对象表单的Refresh方法 2 引用也可以是多级的 但要逐级引用 例 THISFORM Textl Caption 引用本表单的对象Textl的Caption属性THIS Column1 Header1 Caption 引用本表格对象Columnl列的Headerl标头的Caption属性 3 控件也可引用包含它的直接容器 例 THIS PARENT Caption 引用包含本对象的直接容器的Caption属性 二 编程设置属性和调用方法程序 1 编程设置对象属性对象创建后 各属性就具有了默认值 这个值可以在属性窗口中进行修改 也可以通过编写事件代码来设置 设置格式 对象名 属性名 设置值说明 属性设置必须遵循对象引用规则 例8 2 设计包含一个命令按钮的表单 单击该命令按钮将使它在屏幕上随机移动 表单的背景色为蓝色且运行时在屏幕上居中 P 186 1 创建表单 命令窗口键入命令ModiFormLocatechange 2 添加命令按钮Command1 3 在表单Form的Init事件中输入如下事件代码 Thisform Backcolor RGB 0 0 255 RGB 为颜色函数Thisform Autocenter T Thisform Caption 跳动的对象 4 Commandl的Click事件代码编写如下 THIS Left Int Thisform Width Rand Rand 为一个可产生随机数的函数 THIS Top Int Thisform Height Rand 5 保存表单并运行之 运行 3 编程调用对象方法程序VFP的方法程序有的是带有参数的 有的是不带参数的 有的有返回值 有的没有 调用格式 对象名 方法程序名 参数1 参数2 调用时须遵守对象引用规则 对象的方法程序代码不能删或改 但可以添加代码以扩充功能 1 Cls方法格式 OBJECT Cls功能 清除表单上的图形或文本 2 Print方法格式 OBJECT Print cText 功能 在表单上打印一个字符串 1 Release方法格式 OBJECT Release功能 释放表单或表单集例 THISFORM Release2 Refresh方法格式 OBJECT Refresh功能 用于重新绘制对象 并刷新它的所有值例 THISFORM Refresh3 Setfocus方法格式 OBJECT Setfocus功能 用于给对象设置焦点例 THISFORM Text1 SetFocus 使Text1对象获得焦点 4 Line方法功能 用于在表单上绘制一条线 格式 OBJECT LINE nXCoord2 nYCoord2 或者OBJECT LINE nXCoord1 nYCoord1 nXCoord2 nYCoord2 参数 nXCoord1 YCoord1用于指定线的起始点坐标 nXCoord2 nYCoord2用于指定线的终止点坐标 例8 3 在表单上显示九九乘法表 单击表单则清除该乘法表 P 187 1 创建表单Form1 2 Form1的Init事件代码编写如下 THISFORM Width 425 指定表单的宽度THISFORM Height 130 指定表单的高度THISFORM CurrentX 0 指定乘法表的初始横坐标THISFORM CurrentY 2 指定乘法表的初始纵坐标FORi 1to9 开始乘法表的显示FORj 1toiexpr1 Str i 1 Str j 1 Str i j 2 Space 2 THISFORM Print expr1 调用Print方法实现显示ENDFORTHISFORM Print 打印一空白行ENDFOR 3 Forml的Click事件代码如下 THISFORM Cls 运行 三 带参事件编写 VFP的事件与方法程序一样 有带参数 有不带参数 对带参事件编程时要注意参数含义 例如三个鼠标事件MouseDown MouseMove MouseUp都有如下参数 LPARAMETERSnButton nShift nXCoord nYCoor 例8 4 设计一个简单的绘图应用程序 要求在表单上用鼠标画线 P 188 8 6使用生成器向表单添加控件 访问生成器有两种方法 1 使用表单设计器的快捷菜单2 激活 表单控件 工具栏 生成器锁定 按钮 用生成器添加控件的操作步骤如下 1 在 表单控件 工具栏中 单击 生成器锁定 按钮 2 选择要添加控件 在 表单设计器 中 单击要添加控件的位置 系统自动打开 控件生成器 3 在对话框中 设置相应信息 8 7表单向导 表单向导以交互方式向用户提出一系列问题 并基于用户的回答而创建表单 在VFP中 有两种类型的表单向导 表单向导和一对多表单向导 下面分别介绍其操作步骤 8 8表单向导 1 表单向导的打开方法1在 项目管理器 中打开 1 在 项

温馨提示

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

评论

0/150

提交评论