vb程序设计第七章

合集下载

第7章VB过程和参数传递

第7章VB过程和参数传递

VB程序设计教程
沈美莉 马银晓 陈孟建 编著
10
Function过程 第二节 Function过程
二、调用Function过程 调用 过程
Function过程的调用比较简单,可以象一个函数一样调用,其调用格式为: <过程名> = ([<实参表列>]) 【例题5.16】 编写一个求最大公约数(GCD)的函数过程,并调用该函数。 【程序代码】 (1)创建GCD函数 Function gcd(ByVal x As Integer, ByVal y As Integer) As Integer Dim reminder As Integer Do While y <> 0 reminder = x Mod y x = y y = reminder Loop gcd = x End Function
VB程序设计教程
沈美莉 马银晓 陈孟建 编著
5
Sub过程 第一节 Sub过程
二、调用sub过程 调用 过程 调用Sub过程有两种方法,一种方法是使用Call调用过程语句来调 用过程,另一种方法是将过程名作为一个语句来使用。 call调用语句 1.用call调用语句 (1)格式 Call 过程名 [(<实参表>)] (2)功能 Call语句把程序控制传递到一个Visual Basic语言的Sub过程。 Call语句调用一个过程时,如果过程本身没有参数,则<实参表> 和括号可以省略;否则,应给出相应的实际参数,并把参数放在 括号中。实际参数是传递给sub过程的变量或常数的。 例如: Call ppa(a,b)
VB程序设计教程
沈美莉 马银晓 陈孟建 编著
18
第三节 参数的传递
例如: Function fac(a,b) …… …… fac = fa End Function 调用fac函数时,可以使用以下语句来完成: Private Sub Command1_Click() …… …… Call fac(x,y) End sub 以上程序中的a和b是两个形式参数,而 x和y是两个实际参数。这样就完成了形参 与实参的结合,其关系如下图所示。

Visual Basic程序设计VB第7章电子讲稿

Visual Basic程序设计VB第7章电子讲稿

7.1 通用过程和函数过程应用案例
If "A" <= upalp And upalp <= "Z" Then checha = True Else checha = False End If End Function
7.1.2 应用扩展 利用过程计算5!+10!。 本例利用窗体加载,再采用Print直接在窗体上输出结果。程序代码如下: 程序代码如下: Private Sub Form_load() Dim y As Long, s As Long Show Call jc(5, y) s = y Call jc(10, y) s = s + y

7.1 通用过程和函数过程应用案例


Show a = Val(InputBox("输入第一个数")) b = Val(InputBox("输入第二个数")) c = Val(InputBox("输入第三个数")) s = max(a, b) Print "三个数中的最大数是:"; max(s, c) End Sub Function max(m, n) As Single If m > n Then max = m Else max = n End If End Function
7.1 通用过程和函数过程应用案例
Call mysub1(30) End Sub Private Sub mysub1(n) Print String(n, "*") End Sub Private Sub mysub2() Print "*"; Tab(30); "*" End Sub

《VB程序设计》课程标准

《VB程序设计》课程标准

课程标准课程名称:Visual Basic程序设计学时学分:160(2)专业层次:微机制订日期:2012年9月归口单位:计算机工程系制订人:Visual Basic程序设计是一个理论和实际紧密相连的技术,上机实验是教学中的必要环节。

现提出一套可行的“Visual Basic程序设计”课程的课程标准。

1 课程概述●课程研究的对象和研究内容随着计算机的普及和以Internet为代表的信息高速公路的迅速发展,计算机应用已深入到社会的各行各业,这不仅要求当今的大学生要掌握好本专业知识,同时还要有用计算机技术为本专业服务的能力。

因此熟练掌握一种计算机应用软件开发工具是对大学生的基本要求,这将直接影响到计算机在其他专业领域中的应用。

本课程所讲授的Visual Basic即是一种易学实用、适用面广的面向对象的软件开发平台。

VB程序设计课程可以使学生掌握软件设计的基础知识和基本方法,培养学生具有利用软件开发环境解决实际问题的能力,为进一步学习其它计算机知识及今后使用或开发应用程序奠定基础。

●课程在整个课程体系中的地位“Visual Basic程序设计”属于计算机基础教育课程的三个层次“文化、技术、应用”中的第二层次,是微机高职专业学生必修的计算机技术基础课程。

它的先修课是《信息技术基础》。

2. 课程目标(1)使学生理解程序设计的基本概念,建立起程序设计的基本思路,提高学生的理论知识水平。

主要包括了算法的概念、程序设计中的基本技巧和一些常用算法;能够阅读、理解源程序和设计解题流程的能力;了解结构化程序设计和面向对象程序设计的思想,能编制出风格良好的程序;最后达到使用Visual Basic 建立一个小型的应用系统的目的。

(2)使学生掌握基本的程序设计的技术和方法,培养学生的实际动手能力。

这些技术和方法包括算法的设计,程序的实现,能够使用Visual Basic建立一个小型的应用系统。

(3)使学生了解程序设计在本专业的应用、发展及其趋势,培养学生的科研素质。

2019VB程序设计_第七部分

2019VB程序设计_第七部分
❖ 经验三:(本经验很重要)使用ADO开发时,连接数据库的 方式有三种(前面已经叙述了),其中DSN需要用户首先使 用要将所要操纵的数据库设置为数据库源并给其命名。方法 是在控制面板->管理工具->数据源(ODBC)下面进行配 置。比如设置的数据源名称为data,那么可以通过下面几行代 码来连接数据库:
❖ Dim conn As New ADODB.Connection Dim rs As New ADODB.Recordset
❖ 连接数据库 conn.Open "dsn=data" '打开数据源(即选定操作的数据对象) rs.Open SQL语句, conn
❖ 但是如果是使用ODBC和OLEDB的方式进行连接,那么大家 一定知道在连接字符串上那一长串的代码,不要说对于初学 者,就是对于那些经验丰富的程序员来说,也很难记住这一 串代码。那么如何可以记住这一串代码呢?其实,方法很简 单,只要添加一个ADO Data控件,然后在其属性框中使用 向导进行设置后,那么最后向导就会自动生成一段 ConnectionString,只需要将这一行代码拷贝下来然后放到 conn.open之后的连接字符串参数的位置上就可以了。这条 经验希望读者能够记住,实际开发中很实用。
驱动程序来访问关系数据库。但是,RDO已被证明是许多
SQL Server、Oracle 以及其他大型关系数据库开发者经常
选用的最佳接口。RDO提供了用来访问存储过程和复杂结果
集的更多和更复杂的对象、属性,以及方法。
❖ 和DAO一样,在VB中也把其封装为RDO控件了,其使用方 法与DAO控件的使用方法完全一样。
本身也提供了对SQL语言的支持,用户可以直接将SQL语句
送给ODBC。

VB程序设计基础全集

VB程序设计基础全集

1.1.2 Visual Basic的特点

4.提供了易学易用的应用程序集成开发环境 在Visual Basic的集成开发环境中,用户可设计界面、编写代 码、调试程序,直至将应用程序编译成可执行文件在 Windows上 运行,使用户在友好的开发环境中工作。


5.支持多种数据库系统的访问
利用 Visual Basic 的数据控件,可访问 Microsoft Access、 Dbase、Microsoft FoxPro、Paradox 等 , 也 可 以 访 问 Microsoft Excel、Lotusl 1-2-3等多种电子表格。

Visual Basic 6.0程序设计概述 程序设计基础 结构化程序设计与数组 函数与过程 常用控件 图形控件和图形方法 对话框和菜单程序设计 文 件
第9章 数据库与数据访问技术
第1章 Visual Basic 6.0程序设 计概述

1.1 1.2 1.3 1.4 1.5 1.6 1.7

编 :陈庆章
前 言
Visual Basic是目前进行Windows应用程序设计的最 佳工具之一,也是最佳的程序设计入门语言,这一看法 已经得到普遍认可。 非计算机专业计算机基础教学的 3 个不同层次,分 别解决的是“操作技能”、“思维训练”、“综合应用 能力”问题。学习一门程序设计语言,主要目的是要提 高读者分析归纳、解决问题的能力,在思维训练方面受 益,并使得读者通过更系统、深入的学习后开发实用程 序成为可能。 因此,本书在内容上精选了Visual Basic 6.0中最基 础、最常用并实用的部分;在编排和风格上力图体现循 序渐进、深入浅出的特点;以样本程序示例教学,阶段 性构筑读者的成就感,使得艰苦的程序设计工作升华为 一种艺术创作,提供了一条通往程序设计高手的捷径。

vb用户界面设计实验报告(共9篇)

vb用户界面设计实验报告(共9篇)

vb用户界面设计实验报告(共9篇) VB第7章用户界面设计一、选择题1、下列控件中,没有Caption属性的是( )。

A. 框架B. 列表框C. 复选框D. 单选按钮2、复选框的Value属性为1时,表示( )。

A. 复选框未被选中B. 复选框被选中C. 复选框内有灰色的勾D. 复选框操作有错误3、用来设置粗体字的属性是( )。

A. FontItalicB. FontNameC. FontBoldD. FontSizeE. FontUnderline4、假定定时器的Interval属性为1000,Enabled属性为Ture,调用下面的事件过程,程序运行结束后变量x的值为( )。

Dim x As IntegerSub Timer1_Timer( )For i = 1 To 10x = x + 1Next iEnd SubA. 1000B. 10000C. 10D. 以上都不对5、在下列说法中,正确的是( )。

A. 通过适当的设置,可以在程序运行期间让定时器显示在窗体上B. 在列表框中不能进行多项选择C. 在列表框中能够将项目按字母顺序从大到小排列D. 框架也有Click和DblClick事件6、在用菜单编辑器设计菜单时,必须输入的项有( )。

A. 快捷键B. 标题C. 索引D. 名称7、在下列关于菜单的说法中,错误的是( )。

A. 每个菜单项都是一个控件,与其他控件一样也有自己的属性和事件B. 除了Click事件之外,菜单项还能响应其他的,如DblClick等事件C. 菜单项的捷径键不能任意设置D. 在程序执行时,如果菜单项的Enabled属性为False,则该菜单项变成灰色,不能被用户选择8、在下列关于通用对话框的叙述中,错误的是( )。

A. CommandDialog1.ShowFont显示“字体”对话框B. 在“打开”或“另存为”对话框中,用户选择的文件名可以经FileTitle属性返回C. 在“打开”或“另存为”对话框中,用户选择的文件名及其路径可以经FileName属性返回D. 通用对话框可以用来制作和显示“帮助”对话框二、填空题1、复选框( )属性设置为2——Grayed时,变成灰色,禁止用户选择。

VB程序设计课后习题答案

VB程序设计课后习题答案

VB课后习题解答第一、二章:1、简述VB6.0的主要特点答:方便、直观的可视化设计工具;面向对象程序设计方法;事件驱动的编程机制;易学易用的应用程序集成开发环境;结构化程序设计语言;完备的联机帮助功能;强大的多媒体、数据库和网络功能。

2、当正常安装VB6.0后,误把Windows子目录删除。

当重新安装Windows后,是否需要再次安装VB6.0?答:要重新安装的。

因为安装VB6.0时,有些VB程序被系统自动安装在Windows目录下,所以一旦删除Windows子目录,就必须重新安装VB6.0。

3、Visual Basic 6.0分为学习版、专业版和企业版,如何知道所安装的是哪个版本?答:在VB6.0的启动界面上,能显示对应的版本。

4、叙述建立一个完整应用程序的过程答:首先建立用户界面的控件对象(简称控件);然后对控件属性进行设置;再对控件事件过程及编程;保存应用程序;程序调试和运行。

5、Visual Basic 6.0有多种类型窗口,若要在设计时看到代码窗口,应怎样操作?答:选择“视图”—>“代码窗口”命令或单击“工程资源管理器”窗口中的“查看代码”按钮。

6、当建立好一个简单的应用程序后,假定该工程仅有一个窗体模块。

试问该工程涉及多少个要保存的文件?若要保存该工程的所有文件,应先保存什么文件?再保存什么文件?若不这样做,系统会出现什么信息?答:涉及两个文件要保存。

先保存窗体文件(.frm),再保存工程文件(.vbp)。

若先保存工程文件,系统也会先弹出“文件另存为”对话框,要求先保存窗体文件。

7、保存文件时,若不改变目录名,则系统默认的目录是什么?答:系统默认的目录是VB988、安装Visual Basic 6.0后,帮助系统是否也已安装?答:没有。

VB6.0的帮助系统在两张光盘上,即MSDN Library,其中还包含了VC、VFP等其他语言的帮助系统。

9、如何使用Visual Basic 6.0的帮助系统?答:最方便的方法是选定要帮助的内容,然后按F1功能键,这时系统打开MSDN Library查阅器,直接显示与选定内容有关的帮助信息。

VB7第七章

VB7第七章

VB程序设计基础教程—七章
4
用户界面
Visual Basic Internet 应用程序的用户界面可 以是一系列 HTML 页面、HTML 页面和 Visual Basic 窗体的混合或者使用了某些特殊部件的Visual Basic 窗体,这些特殊部件是一些能够发挥 Internet 强大 功能的控件,如 WebBrowser 控件等。不论采用何种 用户界面,应用程序处理事件、调用方法、设置或检 索属性都是基于 HTML 页面中的元素的。构成 Visual Basic Internet 应用程序用户界面的Web 页面一般是 由Web 设计器而不是开发者制作的。
VB程序设计基础教程—七章
11
WebBrowser控件
WebBrowser的属性: WebBrowser的事件: 在一般Internet的应用上,浏览器、电子邮件以及 LocationURL :返回控件显示WEB页面的URL。 DownloadBegin:下载操作开始时触发。 文件传输的使用是最为频繁的。其中,浏览器可以称 WebBrowser的方法: DownloadComplete:下载操作完成、终止或失败时 得上使用最为频繁的一种工具。您是否觉得现有的浏 Navigate:转移到指定的URL或打开指定HTML 触发。 览器虽然方便,但是在必须同时浏览多个网站的内容 文件。 ProgressChange:跟踪下载操作的过程,并定期触 时,仍有些不便?在Visual Basic的Internet程序设 GoBack :向后连接一个页面。 发此事件。 计中,微软也已经为我们准备了有关浏览器的控件—— GoForward :向前连接一个页面。 TitleChange:当前文档标题改变时触发。 “Microsoft Internet Controls”。 Stop: 终止当前页面的连接。 VB 6.0提供了一个名叫 WebBrowser的 ActiveX控件, Refresh :刷新当前页面。 GoHome :连接到事先设置好的主页。 用它可以实现 Web浏览器的功能。 GoSearch :页面的搜索。 12 VB程序设计基础教程—七章
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
在 Visual Basic中最常使用下列两种过程: ◇Sub 过程不返回值,称为子过程。 ◇Function 过程返回值,称为函数过程。
7.1
Sub子过程
Sub过程分为事件过程和通用过程。 1. 事件过程 当 Visual Basic 中的对象对一个事件 的发生作出认定时,便自动用相应于事件的名 字调用该事件的过程。因为名字在对象和代码 之间建立了联系,所以说事件过程是附加在窗 体和控件上的。一个控件的事件过程将控件的 (在 Name 属性中规定的)实际名字、下划线 (“_”) 和事件名组合起来。
Integer
4、数组参数的传递 在VB中允许参数是数组,数组只能通过传址方式 进行传递,在传递数组时还要注意以下事项: 1)在实参列表和形参列表中放入数组名,忽略 维数的定义,但圆括号不能省略。 2)如果要传递数组的某一个元素,则只须直接 写上该数组元素。如:Call test(4,a(3)) 例:
7.4.2 变量的作用域 变量的作用域决定了哪些子过程和函数过程可以 访问该变量。 1、局部(过程级)变量 指在过程内用Dim语句声明的变量(或不加声 明直接使用的变量),只能在本过程中使用的 变量,别的过程不可访问。 2、窗体(模块级)变量 指在一窗体/模块的任何过程,即在“通用声 明”段中用Dim 语句或用Private语句声明的变 量,可被本窗体/模块的任何过程访问。
Fact(2)=2*fact(1) Fact(1)=1*fact(0) Fact(0)=1
Fact(4)=4*6 Fact(3)=3*2
Fact(2)=2*1 Fact(1)=1*1
边界条件
思考:根据递归的处理过程,在上述fact函数过程中, 若少了 : If n= 0 then fact=1 即只有语句: fact(n)=n*fact(n-1) 程序运行结果将会如何? 总结:构成递归的条件 (1)递归结束条件及结束时的值 (2)能用递归形式表示,并且递归向结束条件发展 注意: (1)递归算法设计简单,但消耗的上机时间和占据的内 存空间比非递归算法大; (2)设计正确的递归算法要满足构成递归的条件。
7.1.2 函数过程的定义和调用
1、函数过程的定义 自定义函数过程有两种方法: 利用“工具”菜单下的“添加过程”命令定义
利用代码窗口直接定义
自定义函数过程的形式:
[Private|Public][Static] Function <函数名>{[<形参表>]}[ AS <类型>] ∶ [<函数名>=<表达式>] [Exit Function] ∶ End Function
cj(),
″Test″
)
定义过程:Sub
testsub(r As Integer, aa() As Single,
cc As String) Nhomakorabea形式参数
3、传递方式 按值传递与按址传递 (1)按值传递—如果调用语句中的实际参数是常 量或表达式,或者定义过程时用ByVal关键字,就 可以按值传递。按值传递时,传递的只是变量的 副本!在过程中对形参的变化不会影响变量本身. 如果定义过程时没有用ByVal而又要求变量按值传 递时,可以先把变量变成一个表达式,把变量转 换成表达式的最简单的方法就是把它放在括号内。
每个窗体模块都包含: ⑴事件过程,即代码部分,其中有为响应特定 事件而执行的指令; ⑵控件。在窗体模块中,对窗体上的每个控件 都有一个对应的事件过程集; ⑶窗体模块还可包含通用过程,它对来自任何 事件过程的调用都作出响应。 ⑷窗体变量的说明、外部过程的窗体级声明。
7.4.1.2 标准模块 标准模块(具有 .bas 文件扩展名)可以 包含类型、常数、变量、外部过程和公共过 程的公共的或模块级的声明。 可将那些与特定窗体或控件无关的代码放 入另一类型的模块— 标准模块(文件扩展名 为 .BAS )中。如果一个过程可能用来响应 几个不同对象中的事件,应该将这个过程放 在标准模块中,而不应在每一个对象的事件 过程中重复相同的代码。
7.4 变量、过程的作用域
一般VB 的应用程序组成可用下图描述。
VB应用程序.VBP
窗体模块 .Frm
类模块 .Cls
标准模块 .Bas
函数过程 (Function)
Sub过程
事件过程
函数过程 (Function)
Sub过程
7.4.1.1 窗体模块 由于 Visual Basic 应用程序是基于对象的, 所以应用程序的代码结构就是该程序在屏幕上物 理表示的模型。根据定义,对象包含数据和代码 。在屏幕上看到的窗体代表属性,这些属性定义 了窗体的外观和内在特性。应用程序中的每个窗 体都有一个包含其代码的相关的窗体模块(文件 扩展名为 .FRM)。
(2)按址传递—让过程根据变量的内存地址去访 问变量的内容,即形式参数和实际参数使用相同 的内存地址单元,这样通过子过程就可以改变变 量本身的值。系统缺省按地址传递参数。在按址 传递调用时,实际参数必须是变量,而常量或表 达式无法传址。 : 前面已编写了交换两个数的过程(与Swap2 相同)为了弄清传址与传值的区别,再作比较。 Swap1用传值传递,Swap2用传址传递,哪个过程 能真正实现两个数的交换?为什么?两句Print 语句输出的结果分别是多少?
Swap(x,y) 子过程的定义
Public Sub Dim t t=x x=y y=t End Sub Swap(x,y)
主调程序调用Swap子过程
Private Sub Form_Click() Dim a,b a=10 b=20 Swap a,b Print “a=”;a,“b=”;b End Sub
1 n=0
n!=
n(n-1)!
n>0
用过程来完成求阶乘的操作:
1
fact(n)= n*fact(n-1) n=0 n>0
例:P198 7-9
在函数过程fact(n)的定义中,当n>0时,连续调用 fact自身共n次,直到n=0为止。现设n=4,则fact(4) 的执行过程如下:
Fact(4)=4*fact(3) Fact(3)=3*fact(2)
2、函数过程的调用 函数过程的调用:除了事先需要定义函数外,调 用FUNCTION函数的方法与调用标准函数的方法相 同。其形式为: 函数过程名{[参数列表]} 如:m=fact(5) 由于函数过程名返回一个值,故函数过程 不能作为单独的语句加以调用,它必须作为表达 式或表达式的一部分,再配以其他的语法成分构 成语句。 注意:
从Swap(x,y)子过程的定义可以看到形参x,y 承担了两个任务:既从主程序中获得初值,又将 结果返回给主调程序,而子过程名是无值的 。
2、子过程的定义 子过程的定义同函数过程的定义,形式如下:
[Private|Public][Static] Sub <子过程名>{[<形参表>]} ∶ [Exit Sub] ∶ End Sub
7.3 过程的嵌套与递归调用
嵌套—在一个过程中调用另一个过程 递归—过程直接或间接地调用其自身
7.4.1 过程的嵌套
主程序 Sprg1
Sprg2
调用Sprg1 调用Sprg2 End Sub End Sub End Sub 过程的嵌套图解
例:P196 7-8
7.4.2 递归 利用递归的办法来定义自然数n的阶乘如下:
7.2 参数传递
1、形式参数 形式参数—在定义通用过程时,出现在Sub或 Function语句中的变量名,是接收数据的变量。 2、实际参数 实际参数—在调用Sub或Function过程时,传送给 Sub或Function过程的常量、变量或表达式。
实际参数
调用过程:Call testsub(18,
Public Sub
Swap1(ByVal x As Integer,ByVal y As Integer)
Dim t As Ineger t=x:x=y:y=t End Sub
Public Sub Swap2( x As Integer, y As Integer )
Dim t As Ineger t=x:x=y:y=t End Sub Private Sub Command1_click() Dim a As Integer,b As a=10:b=20 Swap1 a,b Print “a=”;a,”b=”;b a=10:b=20 Swap2 a,b Print “a=”;a, “b=”;b End Sub
在编写过程时,为了某种功能的处理,或要 获得多个结果时,就要用到VB所提供的功能更 强,使用更灵活的子过程。 1、引例 编程时经常要进行两个数的交换,希望编写一个 两个数交换的过程供多次调用。即Swap(x,y) Swap过程的作用是将x,y两个数进行交换,也就 是在过程调用前与调用后,x,y的值进行了交换。
子过程与函数过程的区别及注意事项:
(1)子过程的适用范围大于函数过程。用函数 过程定义的,肯定能用子过程定义,反之则不一 定。 (2)函数过程有返回值,过程名也就有类型, 同时在函数体内必须对函数过程名赋值;而子过 程没有值,也就没有类型,且不能在子过程体内 对子过程名赋值。
3.查看过程
通用过程是程序中的公共代码段,可供各个事件过 程调用,因此编写程序时经常要查看当前模块或其他 模块中有哪些通用过程。 要查看当前模块中有哪些Sub过程和Function过程, 可以在代码窗口查看。 如果要查看的是其他模块中的过程,可以选择“视 图”菜单中的“对象浏览器”命令。
(1)“参数列表”称为实参或实元,它必须与形 参保持个数相同,位置和类型一一对应。实参可 以是同类型的常数、变量、数组元素、表达式。 (2)调用时把实参的值传递给形参称为参数传递。 (3)当参数是数组时,形参与实参在参数声明时 应省略其维数,但括号不能省。 例:求1!+3!+4!+9!=? 完整程序?
相关文档
最新文档