第7章 过程过程1.ppt

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第7章 过程过程1

第 7 章 过程 教学要求 掌握VB的两种过程:事件过程和通用过程 掌握Sub过程的定义 掌握Function过程的定义 掌握过程的调用 掌握参数的传递——按值传递和按地址传递 掌握递归算法 掌握变量的作用域 Private Sub Form_事件名([参数列表]) [局部变量和常数声明] 语句块 End Sub 4. 通用Sub过程的定义 [格式]: [Private|Public] [static] Sub 过程名([参数列表]) 过程体 End Sub * 7.1 Sub过程 7.2 Function过程 7.3 过程调用 7.4 参数的传递 7.5 递归过程 7.6 变量的作用域 7.7 程序示例 7.8 创建与设置启动过程 教学内容 基本思想:将一个大的程序按功能分割成一些小模块 特点: 各模块相对独立、功能单一、结构清晰、接口简单 控制了程序设计的复杂性 避免程序开发的重复劳动 易于维护和功能扩充 模块化程序设计 c n m = m!(n-m)! n! Private Sub Command1_Click() n = Val(Text1.Text) m = Val(Text2.Text) k = n t = 1 For i = 1 To k t = t * i Next i s = t k = m t = 1 For i = 1 To k t = t * i Next i s = s / t k = n - m t = 1 For i = 1 To k t = t * i Next i s = s / t Text3.Text = Str(s) End Sub 共同代码 计算k! 能不能简化? 计算: 模块化程序设计举例 函数定义 计算k! Private Sub Command1_Click() Dim m As Integer, n As Integer Dim s As Long n = Val(Text1.Text) m = Val(Text2.Text) s = fact(n) / (fact(m) * fact(n - m)) Text3.Text = Str(s) End Sub Private Function fact(k As Integer) As Long Dim i As Integer fact = 1 For i = 1 To k fact = fact * i Next i End Function 函数调用(三次) 使用函数 过程的分类 事件过程 Sub 过程 通用过程 子程序过程 Sub 函数过程 Function 7.1 Sub过程--事件过程 1. 概念:由控件对象通过事件触发所执行的一系列代码。 2. 说明: 事件过程之前一般都有Private Sub,表明事件过程是局部的,只在本窗体中有效。 事件过程是否有参数由系统自动添加,不能人为改动。 3. 分类: 窗体事件过程 控件事件过程 Private Sub 控件名_事件名([参数列表]) [局部变量和常数声明] 语句块 End Sub 窗体的事件过程名中不使用其具体名称,而固定用Form 控件的事件过程名中必须使用其具体名称 7.1 Sub过程--事件过程 4. 窗体启动时的4个相关事件 (p.126) Initialize(初始化)事件——配置窗体,在Load之前。 Load(加载)事件——窗体加载到内存时触发。 Activate(激活)事件——成为被激活窗体时触发 GotFocus(聚焦)事件——窗体成为当前焦点时触发,一般是窗体上的控件成为焦点,而不是窗体。 执行次序: Initialize Load Activate Gotfocus 注意: 窗体的Initialize、Load事件发生在窗体被显示之前,其中可放置系统初始化命令,但其中语句有所限制; 窗体加载后,只要不被卸载,就不会再执行Initialize、Load事件,但Activate事件会多次发生; 当访问另一窗体上的“非可视”数据或调用其中定义的全局过程时,只会触发该窗体的Initialize事件,而Load事件不触发; 当访问另一窗体上的“可视”数

文档评论(0)

yaocen + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档