




已阅读5页,还剩3页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
VB函数与过程教学目的:1、 熟悉VB中函数的含义及函数的分类。2、 掌握VB中用户函数的定义及应用。3、 掌握VB中通用过程的含义及使用方法。教学重点:1、 VB中函数基本概念的理解。2、 VB中用户函数定义方法。3、 VB中变量的作用范围。4、 VB中通用过程的应用。课时安排:理论教学安排6课时,上机练习8课时一、 VB通用过程1、 重复使用的程序段独立定义为过程。2、 过程的分类(1)事件过程(例如click,dblclick,)(2)通用过程(由用户定义,可供VB过程来调用;用户定义的过程称为“子过程”)3、通用调用流程:调用过程Call subACall SubACall SubBSubAEndSubASubBEndSubB程序过程:(1) 调用过程可以事件过程或者用户定义过程。调用过程按顺序执行时,遇到CALL命令则转向指定的子过程。(2) 子过程按顺序执行,遇到子过程的结束语句时,返回到调用过程的断点后一条语句(CALL的下一条语句)。(3) 调用过程接着执行,遇CALL命令重复(2);否则执行到程序结束。4、VB中的通用过程: (1)SUB(过程)-无返值 (2)FUNCTION(函数)-有返值二、 SUB过程上机练习:P165例7.1 Private Sub Form_Load()ShowCall sub1(30)Call sub2Call sub2Call sub2Call sub2Call sub2Call sub2Call sub1(30)End SubPrivate Sub sub1(n)Print String(n, *) string函数用来重复出现n次*End SubPrivate Sub sub2()Print *; Tab(30); *End Sub1、 Sub过程的定义Private|public|static sub 过程名(形式参数列表)过程语句块(可以含有Exit sub)End sub(1) Private表示过程只在当前模块有效,public则表示在整个程序范围都有效。(2) Static表示过程的局部变量静态分配空间(局部变量保持到整个程序结束才释放,而动态变量则是过程退出就释放变量。)2、 Sub过程的建立(1) 窗体中打开代码窗口(.frm),选择通用过程,直接编写sub过程。(2) 在标准模块(.bas)中来创建sub过程。 第一步,在“工程”菜单或工程面板的快捷菜单中选择“添加模块”。 第二步,在“工具”菜单中选择“添加过程”,弹出“过程对话框”,输入过程名,录入过程代码;也可以直接在通用代码框中录入过程。注意:在标准模块书写通用过程时,单独保存.bas的模块文件。如果过程中使用窗体等对象,不能省缺对象名。3、 Sub过程的调用Call 过程名(实参数表) 过程名 实参表上机练习:1、P168例7.22、P169例7.33、P195上机调试1Private Sub ifnum(str1 As String, n As Integer) Dim k As Integer For k = 1 To Len(str1) 逐个字符判断是否为数字 If Asc(Mid(str1, k, 1) 57 Then n = 0: Exit Sub End If Next k n = 1End SubPrivate Sub Command1_Click()Dim a As String, b As String, c As StringDim y1 As Integer, y2 As Integer, y3 As Integera = Text1.Text a,b,c用来取得三个文本框的字符串b = Text2.Textc = Text3.TextCall ifnum(a, y1) 用来判断a,b,c是否为数字串,为数字串时y1,y2,y3都为1Call ifnum(b, y2)Call ifnum(c, y3)If y1 = 1 And y2 = 1 And y3 = 1 Then Text4.Text = Val(a) + Val(b) + Val(c)Else Text4.Text = 三个文本框内有非数字串End IfEnd Sub4、P186例7.145、P186例7.15(变化可以产生变幻线的效果。)作业:1、什么是通用过程?它是否依赖于对象?试简述通用过程的调用执行过程。2、在VB中如何加入标准模块。通用过程可以书写在标准模块中吗?3、简述VB通用过程定义中private,public与static的区别。三、Function过程(直接返回主调用程序一个值)1、function的定义 Private|public|static function 函数名(参数表)as 数据类型 语句块 函数名=表达式(需要向外传送的结果) Exit function End function2、 fuction的编辑 同sub的编辑上机练习:P170例7.4 3、 函数调用(与系统函数相同) (1)用表达式调用,与系统函数一样。 (2)可以使用call调用,但此时返值无效。上机练习:(1)P170例7.5(2)P196 上机调试题2Private Sub Command1_Click()Dim a1 As Single, a2 As Single, a3 As SingleDim a4 As Single, a5 As Single, a6 As SingleDim s1 As Single, s2 As Singlea1 = Val(Text1.Text) 取得6个数a2 = Val(Text2.Text)a3 = Val(Text3.Text)a4 = Val(Text4.Text)a5 = Val(Text5.Text)a6 = Val(Text6.Text)s1 = max(a1, a2, a3) 调用max函数求最大值s2 = max(a4, a5, a6)If s1 s2 Then Text7.Text = 最大数为 & s1Else Text7.Text = 最大数为 & s2End IfEnd Sub公共模块:Public Function max(m As Single, n As Single, k As Single) As SingleDim max1 As SingleIf m n Then max1 = mElse max1 = nEnd IfIf max1 k Then max1 = kmax = max1 将要传出的结果送给函数名End Function(3)P196 上机调试题3Private Sub Command1_Click()Dim s As Strings = Trim(Text1.Text)n = getword(s)Text2.Text = nEnd SubFunction getword(s As String) As Integern = 0Do While s p = InStr(s, Space(1) 求空格在串中出现的位置n = n + 1If p = 0 Then List1.AddItem s s = Else List1.AddItem Left(s, p - 1) s = Trim(Mid(s, p) 剩下的s去掉左边的单词End IfLoopgetword = nEnd Function(3)P188 例7.16四、多窗体与Sub main过程一般一个VB工程文件只包含一个窗体。工程文件包含多个窗体。1、窗体的添加(工程管理器实现,工程菜单实现)2、窗体的删除(工程管理器中移除)3、窗体的保存(VB工程中,每个窗体都独立保存-保存工程时,最好使用独立文件夹)4、启动窗体的设置(工程菜单实现) VB程序设计中,启动窗体只能有一个,或者是由sub main过程来选择启动。5、多窗体的应用: Load:载入窗体到内存 Unload:卸载窗体,将窗体中清除(如果是正在显示的窗体,将先执行hide方法)Show方法:用来显示窗体(如果是未载入的窗体,将先执行load载入窗体操作) Hide方法:用来隐藏窗体例:将窗体载入内存或从内存中移出: (1)Load 窗体名 (2)Unload 窗体名/unload me窗体在内存中,只隐藏或者显示: (3)窗体名.show (4)窗体名.hide上机练习:P182例7.12多个窗体之间的参数传递使用公共模块。6、Sub main过程 1)添加公共模块 2)编写Sub main过程 3)在“工程”属性设置启动对象为“Sub main”上机练习:1、P182例7.132、P189 例7.172、P196 上机调试5窗体一界面如上,代码:Public i As Integer 公共代码,定义的i是一个在form1中可用的全程变量Private Sub Command1_Click() If i 3 Then Form1.Hide Form3.Show End If 试三次以后转向错误提示窗体form3 If Text1.Text = username And Text2.Text = password Then Form1.Hide Form2.Show End If 用户与密码均正确时转向成功登录窗体form2 i = i + 1 Text1.Text = Text2.Text = End SubPrivate Sub Form_Load()i = 0End Sub窗体二界面如上,代码:Private Sub Command1_Click()Unload MeForm1.Show 卸载自己并返回登录界面End Sub
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025分公司合作合同范本
- 2025离职员工合同终止指南
- 第三单元11《蟋蟀的住宅》第一课时教学设计-2024-2025学年四年级上册语文统编版
- 人教版高一地理必修一第二单元3《常见天气系统》教学设计3
- 2025房产抵押合同
- (正式版)DB1501∕T 0013-2021 《智能农贸市场建设规范》
- 第9课管好我们的物品教学设计-2024-2025学年人·社会·自然一年级浙教版
- 桥面铺装专项施工组织设计与对策-
- 企业管理服务合同范本
- 综合保障面试题库及答案
- 专用车产品规模设计手册
- 储能技术-氢储能
- 西方国家的宪法制度课件
- 网站对历史发布信息进行备份和查阅的相关管理制度及执行情况的说明
- 中医四大经典题目及答案
- 近代中国交通交通运输业变迁课件
- 食品生物技术导论ppt课件
- 非油气探矿权变更延续申请登记书
- 鱼塘补偿协议书范文
- 印度白内障小切口手术学习笔记
- 卢春房副部长讲话《树立质量意识,强化风险控制,持续纵深推进铁
评论
0/150
提交评论