第一章对象及其操作_第1页
第一章对象及其操作_第2页
第一章对象及其操作_第3页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

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

文档简介

1、第一章 对象及其操作 基本要求1) 掌握 Visual Basic 6.0 开发环境的使用。了解工程的概念和组成。2) 通过编写一个程序实例来了解应用程序的整个编写步骤。3) 重点掌握面向对象程序设计的基本原理和事件驱动编程机制。4) 掌握 Visual Basic 中对象的概念和用法。 基本内容11 Visual Basic 程序开发环境1 2 面向对象的程序设计121 程序设计语言的发展122 结构化程序设计123 面向对象的基本概念1,24 VB 程序的执行步骤:125 Visual Basic 应用程序设计步骤1 3 常用对象操作131窗体操作132计时器和标签133文本框134命令按

2、钮作业练习第二章 数据类型、运算及数据输入输出基本要求1) 重点掌握 Visual Basic 的基本语法知识2) 掌握常量和变量的定义和使用。3) 了解各种运算符的具体用法。 基本内容21 编码规则、数据类型、常量与变量211 编码规则212 数据类型213 常量和变量22 表达式221 算术运算222 字符串运算223 关系运算23 常用内部函数(标准函数、库函数)231 数学函数233 日期函数234 输入 / 出函数235 shell 函数第三章 控制结构基本要求1) 重点掌握几种程序的结构。2)掌握DoLoop和ForNext等几种循环语句的用法。3)了解 GoTo 语句执行跳转的用

3、法。基本内容31 选择结构3 11 单行结构条件语句3 12 块结构条件语句3 13 多分支结构3 2 循环控制结构321 For 循环控制结构322 While 循环323 Do Loop 循环第四章 数组基本要求1)重点掌握数据的定义和使用。2)掌握使用数组来保存不同类型的数据。3)掌握使用数据进行排序,学会使用动态数组。和对控件数组编4)了解控件数组的基本原理和用途,学会在窗口界面中设计控件数组,写事件过程。基本内容41 数组的概念:411 数组的定义4 12 动态数组42 数组的基本操作421 数组元素的输入、输出和复制422 排序4 3 控件数组第五章 过程基本要求1)重点掌握子程序

4、和函数的编写和使用。2)掌握模块化程序设计的思想,学会编写具有特定功能的子程序或函数。3)了解 Visual Basic 常用的内部函数的功能。基本内容5 1 过程分类5 2 Funtion 过程:( 1) Funtion 过程的定义( 2)调用 Funtion 过程53 Sub 过程(1)Sub 过程的建立(2)调用 Sub 过程5 4 参数传送、变量作用域541 按引用、按值的参数传送542 不定数量参数543 作用域544 递归第六章 常用控件、界面基本要求1)重点掌握单选按钮、复选框、框架、列表框、组合框、滚动条等控件的使用。1)重点掌握菜单、工具栏的制作过程。2)学会设计简单的窗口界

5、面,并编写不太复杂的应用程序。 基本内容61 常用控件6 11 单选按钮、复选框、框架6 12 列表框、组合框6 13 滚动条、图形控件6 2 常用 ActiveX 控件6 3 菜单第七章 数据文件基本要求1)重点掌握文件的读写操作。2)了解常用的文件操作的语句和函数。基本内容1文件的结构与分类。2文件操作语句和函数。3顺序文件:4随机文件。5文件系统控件:6文件基本操作。第一章对象及其操作基本要求1) 掌握Visual Basic 6.0开发环境的使用。了解工程的概念和组成。2) 通过编写一个程序实例来了解应用程序的整个编写步骤。3) 重点掌握面向对象程序设计的基本原理和事件驱动编程机制。4

6、) 掌握Visual Basic中对象的概念和用法。基本内容1. 1 Visual Basic程序开发环境i启动(1) 单击"开始”按钮"程序” Microsoft Visual Studio 6.0 下的 Microsoft Visual Basic 6.0 中文版进行启动。(2) 若 Windows桌面上有 Visual Basic 6.0的快捷图标,则可双击它直接进行启动。(3) 通过“我的电脑”或“资源管理器”进入安装路径,双击VB6.EXE的图标进行启动。2. 退出(1) 选择“文件”菜单h退出”命令。(2 )单击标题栏右侧的关闭按钮。(3) 使用Alt+Q快捷键

7、。3. 集成开发环境Visual Basic的3种工作状态:(1)设计;(2)运行,只能交互;(3)中断 举例说明基本操作。1. 2面向对象的程序设计1. 2 . 1程序设计语言的发展机器语言 汇编语言高级程序设计语言*面向对象的程序设计语言例如 Visual Basic、Visual C+、Java、Visual Basic .NET 等1. 2. 2结构化程序设计三种基本结构的共同点如下:(1)只有一个入口和一个出口。(2) 结构中的每个部分都有执行到的可能。(3) 结构内不存在死循环(无终止的循环) 。 结构化程序设计方法:自顶向下逐步细化模块化设计1 23 面向对象的基本概念(1) 类

8、 某些具有共同抽象的对象的集合,即将这些对象的共同特征(属性和方法等)抽取出来,形 成一个关于这些对象集合的抽象定义。(2) 对象 类的实例化,是运行的基本实体,包括属性、 方法和事件要素。将数据和处理该数据的过程 (函数和子程序)打包在一起而生成的新的数据类型称之为对象。VB 工具箱中是各种标准控件类,通过“部件”还可加入 ActiveX 控件类。 TextBox 是文本 框控件类,在窗体中实例化为 Text1 ,就是文本框控件对象。也可以重新修改对象名Text1,Text1 对象继承了 TextBox 类的属性、方法和事件。Form 类(窗体类)实例化为 Form1 对象,新建工程时自动地

9、创建一个 Form1 对象。在窗体 对象中创建对象的方法:双击法、拖动法。(3) 属性 对象本身所具有的特性。 属性的设置: 设计状态下利用属性框修改、 运行状态中通过代码赋 值。(4) 方法 对象自身可以进行的动作或行为。 VB 将通用的过程或函数封装在类中,建立好对象后就可 以调用。(5) 事件 预先定义好的、能够被对象识别的动作。(6) 事件驱动在 Visual Basic 应用程序中每一个窗体和控件对象都有一个预先定义好的过程集,运行时若 用户或系统触发事件, 则调用执行相应的事件过程, 否则整个程序就处于等待状态。 并没有 按事件过程的顺序执行。 在某事件过程中所编写的代码决定了用户

10、在触发该事件后执行的动 作。例:根据以下描述, 请说出气球对象的属性、 方法和事件分别是什么?米老鼠形状的红色气 球被针刺破了。答:气球对象的属性:米老鼠形状、红色。方法:破了。事件:刺。1, 24 VB 程序的执行步骤:(1) 启动应用程序,装载和显示窗体。(2) 窗体(窗体上的控件)等待事件的发生。(3) 事件发生时执行对应的事件过程。(4) 重复上述 (2)、 (3)两步。1 25 Visual Basic 应用程序设计步骤(1) 创建工程(2) 界面设计(3) 属性设置(4) 代码编辑,纠错(5) 文件保存(6) 程序运行和调试1. 3常用对象操作1. 3. 1窗体操作例3-1,学习窗

11、体属性。Name窗体名称Visible对象是否可见MouseIc on自定义鼠标Capti on窗体标题Font字体格式Icon加载窗体图标MaxButton是否最大化ForeColor前景色Con trolBox是否有控制菜单Min Butt on是否最小化BackColor背景色Picture加载图片Height对象的高度BorderColor边框颜色BoreStyle窗体边框的样式Width对象的宽度FillColor填充颜色Win dowState运行时的显示状态Top上边距MaskColor图形透明色BorderStyle窗体边框风格Left左边距UseMaskColor是否透明Cu

12、rre ntX当前位置的横坐标En able是否有效MousePoi nt鼠标指针类型Curre ntY当前位置的纵坐标例3-2,学习窗体事件。Load装入Click单击In itialize初始化事件UnLoad卸载DblClick双击Query Uni oad卸载前触发Activate激活Pai nt移动、放大GotFocus获得焦点事件Deactive不是当前Resize改变窗体大小LostFocus失去焦点事件例3-3,学习窗体方法。Print输出打印Hide隐藏窗体Prin tForm打印窗体Cls清屏Move移动窗体Refresh刷新窗体Show显示窗体 AutoRedraw例 3

13、-4,学习多窗体切换。工程菜单中属性、通用、启动对象设置启动窗体。1. 3. 2计时器和标签例3-5,滚动字幕。计时器的Interval属性决定间隔多长时间产生一次Timer事件。标签的Alignment属性决定其中文字的水平对齐方式;AutoSize :自动调整大小; WordWarp:由AutoSize决定在垂直或水平方向自动调整大小;BackStyle :标签是否透明。1. 3. 3文本框例3-6,数据过滤。文本框属性的Text:其中的内容;MultiLine :文本是否多行;MaxLength :文本的最大长度;ScrollBars :滚动条;Locked :可否编辑; Passwor

14、dChar:输入密码;SelStart:选定文本的开始位置;SelLength :选定文本的长度;SelText:选定的文本。文本框事件 Change:改变Text的内容时;KeyPress:输入一个字符时;LostFocus :失去焦点时;GotFocus获得焦点时。文本框方法SetFocus:焦点移到指定对象。1. 3. 4命令按钮例3-7,实现剪帖。按钮属性Style:决定Picture是否能显示图形;ToolTipText :提示文字;Value:按钮是否按 下;Can cel:设定取消按钮;Default :自动获得焦点的按钮。作业练习1-1、1-2、2-1、2-2、3-1 3-7第

15、二章数据类型、运算及数据输入输出基本要求1) 重点掌握 Visual Basic的基本语法知识2) 掌握常量和变量的定义和使用。3) 了解各种运算符的具体用法。基本内容2. 1编码规则、数据类型、常量与变量2. 1 . 1编码规则1. VB字符集字母、数字、27个专用字符2. VB语句书写(1) 不区分大小写,但为了增加可读性,关键字中属于单词的首字母用大写。语句可以左缩 进。同行多条语句用冒号分隔。长语句可以用空格加下划线续行。(3) 单引号+注释,用于独行注释或语句后注释,但不能用于续行注释。Rem+注释可独行,与其他语句同行时用冒号分隔。(4) 数值前加&H、&0分别表示

16、十六进制、八进制,不加前缀表示十进制。3标识符命名(1)由字母或汉字引导的字母、汉字、数字、下划线组成。避免与关键字重名。字符数W 255,其中窗体、控件、模块的标识符字符数W40。(3)建议对象名前3个小写字母表示对象的类型。以后能自动向首次定义的转换。2. 1 . 2数据类型不同数据类型占用内存、取值范围、运算性质不同。1基本数据类型(1)数值型字节型、整型、长整型、单精度、双精度、货币型数据类型关键字类型符前缀占用字节表示范围字节型Byte无byt10255整型In teger%int2-215 215-1长整型Lo ng&lng4-231231-1单精度Si ngle!sng4

17、-3.4E383.4E38双精度Double#dbl8-1.8D3081.8D308货币型Curre ncycur8-922337203685477字符型Stri ng$str:不定长065535个字符逻辑型Boolea n无bln2True、False日期型Date|Time无dtm801,01,10012,31,9999对象型Object无obj4任何对象的引用变体型Varia nt无vnt据需分配(2) 字符型。定长字符串、变长字符串(3) 逻辑型日期型(5) 对象型(6) 变体型。在运行期间存放不同类型的数据。2 用户定义的数据类型3 枚举类型2. 1 3常量和变量1 .变量变量显示声

18、明,通过类型符号:S& =10Dim 声明语句:Dim a As Integer,b As Long 或 Dim a %, b&隐式声明,不声明就使用。设置强制声明:Option Eplicit或在选项、编辑器选中“要求变量声明”。未赋值的变量有默认值:数值,0;变长字符串,无字符的空串;定长字符串,定长空格;varint,空; booleam, false。变量的有效范围局部变量:过程内部声明的变量,仅在该过程中有效。Dim变量名As类型,过程执行期结束后重新调用过程,该变量重新初始化。Static变量名As类型,过程执行期结束后重新调用过程,原值有效。 模块变量:在模块通用

19、段用Private或Dim声明,可被该模块的任何过程访问。全局变量:在标准模块(文件扩展名为.bas,只含有程序代码)声明段用 Public或Global声明,可被该工程中的所有模块的任何过程访问。窗体模块的通用段用 Public声明后变量,其他模块可以用“窗体模块名变量名”访问。2常量直接常量:在程序中直接给出数值、字符串、日期等具体的数值。#5/1/2009 8:30:15 AM#符号常量:用标识符代表。Con st 符号常量名 As数据类型= 常量表达式例4-1,交换文本框中的数据。2. 2表达式2. 2. 1算术运算算术运算表达式:由算术运算符、括号、函数、数据组成的式子。算术运算符有

20、优先级,()、A、-、* /、Mod、+ -。运算时以参与运算的精度高的类型为准, 但 Long 与 Single 运算结果为 Double ;除法和乘方 的结果为 Double 。2 22 字符串运算字符串运算符: & 、 +,实现连接。数字字符串 +数值型数,将“数字字符串”转换为数值型再做算术运算; 字符串 +数值型数,结果出错;数值型数 & 数值型数,将“数值型数”转换为字符串型再做连接运算。2 23 关系运算关系运算符: 、=、= 、=、 、Is、Like 。各关系运算符优先级相同。 优先级低于算术运算 +、-和字符串运算,高于逻辑符的非 not 运算。22 4 逻辑

21、运算逻辑运算符: Not 、And 、Or、Xor、Eqv、Imp。例 4-2 ,判断闰年。2 3 常用内部函数(标准函数、库函数)数学函数、字符串函数、日期函数、转换函数、输出函数、测试函数。有参数、无参数。2 31 数学函数Sqrt(N) Tan(N) 例 4-3 ,直角三角形斜边。 23 2 字符串函数 Asc( “And ”) Chr(98) Str(456) Val( “24 and 57”) Hex(65.6) LCase(“Hello ”) Left( “Hello Li ”,5) Mid( “Hello Li ”,7,2) Ltrim(C) Rtrim(C) 例 4-4 ,提取

22、字符串Abs(N) Int(N)Atm(N) Exp(N)65 ”b” “456”24 “42” “hello” H“ello ”Fix(N) Sin(N) Cos(N)Log(N) Rnd(N) Sgn(N)Round(N1 ,N2)Trim(C)字符串首字母的 ASCII ASCII 码所代表的字符 数字转换为字符串 Val( “and 57”) OCT(65.6) UCase(“Hello ”) Right( “Hello Li ”,2) String(4, ”* ”) Space(N)码值0 “102” “HELLO ”不能识别,不转换四舍五入后的八进制Len(C)233 日期函数Ti

23、me NowMonth(D)DateAdd()DateYear(D)Hour(Time) 例 4-5 ,显示日期时间。不需参数,Day(D)DateDiff()返回当前系统的日期时间WeekDay(D)234 输入 /出函数输入函数InputBox(promt,title,default,Xpos,Ypos) 消息框MsgBox(prompt,button,title)Button 可用符号常量、数字表示: vbOKOnly 0; vbOKCancel 1 ; vbAbortREtryIgnore 2 Print 输出对象 Print 输出项 ,|;Debug.Print “HELLO ” 在

24、立即窗口显示 HELLO Printer. Print “HELLO ” 在打印机上输出 HELLO 逗号表示在 14 列后输出,分号表示紧跟着输出 格式输出Formatexpression,format 例 4-6 ,输入 /出函数 2 35 shell 函数Shell( 字符串,窗口类型 ) 字符串:路径程序名、要打开的文档 窗口类型:程序窗口的大小。例 4-7 ,调用外部程序。第三章 控制结构基本要求1)重点掌握几种程序的结构。2)掌握DoLoop和ForNext等几种循环语句的用法。基本内容31 选择结构3 11 单行结构条件语句If <条件> Then <语句 1&

25、gt; Else <语句 2> 例 5-1 ,四则运算。例 5-2,求最大数。3 12 块结构条件语句If < 条件 > Then 语句块 1Else语句块 2End If例 5-3 ,选择嵌套。IIf 函数3. 1. 3多分支结构If < 条件 1> Then语句块1Elself < 条件 2> Then语句块2Else<其他语句>End IfSelect Case 测试表达式Case 表达式列表1 语句块1Case 表达式列表2语句块2Case Else语句块nEnd Select表达式列表的形式:case 4,6,8,3+7ca

26、se计算机”电脑Xase 2 to 20例5-4,判断星期。例5-5,成绩等级。a» xcase a tocase is < 10case 4,6,8 to 20,is < 1003. 2循环控制结构3. 2. 1 For循环控制结构For 循环变量 = 初值 To 终值 Step 步长语句块Exit For语句块Next 循环变量例5-6,数列求和。循环变量又称为循环控制变量”控制变量"或循环计数器”是用做循环计数器的数值变量。这个变量必须为数值型变量,不能是逻辑型数据或数组元素。循环体 被重复执行的代码段。循环次数一一循环体被重复执行的次数。循环次数必须是有

27、限的,否则称程序陷入 死循环3. 2. 2 While 循环While <循环条件>循环体Wend例 5-7, While 型。3. 2 . 3 Do Loop 循环格式1Do While /Un til < 条件 >语句块Exit Do语句块Loop格式2Do语句块Exit Do语句块Loop While /Un til <条件 >例5-8,求阶乘。 例5-9,判断素数。例5-10,乘法表。小结 赋值语句对普通变量的赋值。对对象变量的赋值。例Dim ex As DataBaseSet ex=Ope nDataBase("File.mdb"

28、;) If语句Select Case 语句For循环语句 普通的数字变量: 集合中的对象:For Each obj In objsNext objDo循环语句当型循环(先判断后执行) 直按型循环(先执行后判断)With语句With Text1.SelStart=O: .SeiLength=Len(.Text) :.SetFocusEnd With第四章 数组基本要求1)重点掌握数据的定义和使用。2)掌握使用数组来保存不同类型的数据。3)掌握使用数据进行排序,学会使用动态数组。4)了解控件数组的基本原理和用途, 学会在窗口界面中设计控件数组, 和对控件数组编写事 件过程。基本内容4 1 数组的概

29、念:4 11 数组的定义数组是一组相同类型的变量集合。数组名:集合的名称。数组元素:集合内的每一个成员。下标: 数组元素在数组中的编号,代表了该元素在数组中的位置。 数组的长度:数组元素的 个数。某个数组元素表示为:数组名 (下标) 按维数分类:一维数组、二维数组、三维数组。最大维数达60 。多维数组的大小(元素的个数)=第一维大小X第二维大小X按在内存分配是否可变分: 定长(固定大小)数组(数组的维数和长度一旦定义,不能改变) 动态数组(可动态重新定义数组的维数和长度) 定长数组的声明Dim Score(1 to 30) As Integer Private BookName(3000) A

30、s String Public Cost(100) As SingleDim A(1 to 5,1 to 5,1 to 5) As LongDim 数组名 (下标 ) As 类型名 Private 数组名 (下标) As 类型名 Public 数组名 (下标 ) As 类型名 Dim Tr(3,4,4) As LongAs 类型名 若省略,则默认为变体数组。 数组正确定义后: 系统分配连续的内存空间,空间名称为数组名 数组中各个元素获得初始值数值型为 0逻辑型为 False字符串型为 "" 变体型为 Empty4 12 动态数组动态数组在数组声明时不指定数组的大小Dim 数

31、组名() As 类型名 如: Dim s() As Single动态数组在需要使用时必须先使用 Redim 语句指定或改变维数和大小,然后访问。程序程 序到 Redim 再分配存储空间。Redim Preserve数组名(下标1,下标2)As 类型名 如: Redim s(10)Redim Preserve s(2, 3)Preserve 保留数组中原有的数据。用Preserve 的 Redim 只能改变数组最后一维的大小。例 6-1 ,统计人数。Private Sub Form_Click()Dim a(-3 To 3) As Integer ' 初值为 0Dim b(1, 1 To

32、 3, 3) ' 未定义类型,默认变体。没有初值Dim i%, j%, k%Print LBound(a), UBound(a)For i = LBound(a) To UBound(a)Print "a(" i; ")=" a(i),Next iPrint: PrintPrint LBound(b, 1), LBound(b, 2), LBound(b, 3)Print UBound(b, 1), UBound(b, 2), UBound(b, 3)Print: PrintFor i = LBound(b, 1) To UBound(b, 1)

33、For j = LBound(b, 2) To UBound(b, 2)For k = LBound(b, 3) To UBound(b, 3)Print "b(" i; "," j; "," k; ")=" b(i, j, k),Next kPrintNext jPrintNext iEnd Sub4 2 数组的基本操作4 21 数组元素的输入、输出和复制数组的输入Dim A(1 To 5) As Integer, i As IntegerFor i = 1 To 5A(i) = InputBox( 请输“入第

34、” & i & 个数“据 ”)Next i 适用于数组元素值与下标之间存在函数关系: Dim A(1 To 5) As Integer, k As IntegerFor k = 1 To 5A(k) = 2 * k - 1Next kArray 函数 对数组整体赋值Dim m As Variant ,i As Integer , b() As Variantm = Array(1,3,5,7,9)'即 m(0)=1、m(1)=3、m(2)=5、m(3)=7、m(4)=9For i=0 to UBound(m)获取下界函数: UBound() ,设定下界为 1 : Opt

35、ion Base 1Picture1 Print m(i) ;“ ”;Next ib=mm 各元素赋值给 b。 b 不能为具体类型,必须为变体例 6-2 ,数组的复制4 22 排序选择法For i = 1 To UBound(iA) - 1iMin = iFor j = i + 1 To UBound(iA)If iA(j) < iA(iMin) Then iMin = jNext j t = iA(i) iA(i) = iA(iMin) iA(iMin) = tNext i 冒泡法 iMin = UBound(iA) For i = 1 To iMin - 1For j = iMin

36、To i + 1If iA(j) < iA(j - 1) Then t = iA(j) iA(j) = iA(j - 1) iA(j - 1) = tEnd IfNext jNext i4 3 控件数组实现相似控件数组由一组类型相同的控件组成, 它们具有一个共同的控件名, 相同的属性, 的功能,控件数组中各控件通过索引号识别。第i 个控件的索引号为 i-1。在设计时建立控件数组,例 6-3,设置背景。在运行时建立控件数组: Private Sub Form_Load() Dim i&For i = 1 To 3Load Text1(i)Text1(i).Left = Text1(

37、0).Left + i * (Text1(0).Width + 300) Text1(i).Visible = TrueNext iEnd SubPrivate Sub Command1_Click()Dim i&For Each TextBox In Text1Text1(i) = Text1(i).l ndex i = i + 1NextEnd Sub第五章过程基本要求1)重点掌握子程序和函数的编写和使用。2)掌握模块化程序设计的思想,学会编写具有特定功能的子程序或函数。3)了解Visual Basic常用的内部函数的功能。基本内容5. 1过程分类窗体模块不仅包含有用于处理发生在窗

38、体中的各个对象的事件过程,而且包含有窗体及窗体中各个控件对象的属性设置以及相关的说明。如果某些自定义过程仅供本窗体内的其他过程共享,则它也可包含在该窗体模块之中。标准模块:被应用程序的多个窗体共享。包含有自定义过程、函数、类型说明、数据说明。 类模块:包含用于创建新的对象类的属性、方法的定义等。窗体事件过程:Private Sub Form_事件名(参数列表)局部变量和常数声明语句块End Sub控件事件过程:Private Sub控件名_事件名(参数列表)局部变量和常数声明语句块End SubPrivate表示该事件过程不能在它自己的窗体模块之外被调用。5 2 Funtion 过程:(1)

39、Funtion 过程的定义Public|PrivateStatic Function 函数名 (参数列表 )As Type局部变量或常数定义 :语句块 :函数名 = 表达式 :Exit Function语句块 : 函数名 = 表达式 End Function通过 As 指定函数返回值的类型;缺省该选项时,函数类型默认为变体 (Variant) 类型。 形参仅代表了参数的个数、 位置和类型, 其初值来源于函数过程调用。 ByVal 表明按值传递, ByRef 表明按地址传递,缺省时按地址传递。当退出过程体后, 用 Dim 声明的变量的空间被收回, 而 Static 声明的要等到模块结束时, 才

40、被收回空间。( 2)调用 Funtion 过程由于函数过程名返回一个值, 故一般函数过程不能作为单独的语句加以调用, 必须作为表达 式或表达式中的一部分,再配以其他的语法成分构成语句。必须给参数加上括号,当调用无参函数,括号可以缺省。例 7-1 ,求公约数Private Sub Command1_Click()Dim x As Integer, y As Integerx = CInt(Text1) : y = CInt(Text2) : Label1 = gcd(x, y)End SubPrivate Function gcd(ByVal m As Integer, ByVal n As I

41、nteger)Dim r As Integerr = m Mod nDo While r <> 0m = n:n = r : r = m Mod nLoopgcd = nEnd FunctionPrivate Function fun(s As String) As StringDim s1 As String, i%For i = 1 To Len(s)s1 = UCase(Mid(s, i, 1) + s1Next ifun = s1End Function53 Sub 过程(1) Sub 过程的建立Private | PublicStatic Sub 子程序过程名 ( 参数列

42、表 )局部变量和常量声明 :语句块: Exit Sub :语句块End Sub 只要能用函数过程定义的, 肯定能用子过程定义; 反之不一定。 通常当该过程具有一个返回 值时, 用函数过程更直观; 当过程有多个返回值时, 一般用设置多个按地址传递的参数的子 程序过程来实现。( 2)调用 Sub 过程Call 子程序过程名 ( 实参列表 )把过程名作为一个语句来使用:过程名实参1,实参2,过程名与第一个实参之间要有一个空格进行分隔;不需要关键字Call;实参列表不需要加括号。例 7-2,求两正数间的素数。5 4 参数传送、变量作用域5 41 按引用、按值的参数传送例 7-3 ,判断闰年。Priva

43、te Sub Form_Click()Dim x%, y% : Cls: x = 5: y = 20 : Print "实参原值:", x, yCall change1(x, y) : Print "按值调用后: ", x, y: x = 5: y = 20Call change2(x, y): Print "按引用调用后 ", x, yEnd SubPrivate Sub change1(ByVal m%, ByVal n%)m = m + 1 : n = n * 2End SubPrivate Sub change2(ByRef

44、m%, ByRef n%)m = m + 1 : n = n * 2End Sub5 42 不定数量参数Private Sub Command2_Click()Dim y% : ClsCall f5(y, 1, 10, 100) : Print yCall f5(y, 10, 20, 30, 40, 50) : Print yEnd SubPrivate Sub f5(s%, ParamArray a() '不定数量形参:放在最后;变体数组;用ParamArrayDim x, t%For Each x In a t = t + x * x Next x s = t End Sub 5

45、43 作用域Option ExplicitPublic x% : Dim z%z 为 Form1 窗体(模块)级变量Private Sub Command1_Click()Call temp3 : Call temp4End SubPrivate Sub temp3()Dim a% :a = 10:z = z + a: Print a, zEnd SubPrivate Sub temp4()Dim a%:a = 2:z = z * a : Print a, zEnd SubPrivate Sub Form_Click()Cls:x = x + 1 : Print "单击次数 &quo

46、t; x :Load Form2: Form2.Show End Sub在 form2 的按钮上,调用 Form1 窗体的全局变量 xPrivate Sub Command1_Click()Form1.x = Form1.x + 100 : Print " 单击了 form2 中的按钮 " Form1.x End Sub例 7-4 ,求和。5 44 递归求最大公约数Private Sub Command2_Click()a = gcd(126, 12) : Print aEnd SubPrivate Function gcd(p&, q&) As LongI

47、f q Mod p = 0 Thengcd = pElsegcd = gcd(q, p Mod q)End IfEnd Function 例 7-5 ,求阶乘。第六章 常用控件、界面基本要求1)重点掌握单选按钮、复选框、框架、列表框、组合框、滚动条等控件的使用。1) 重点掌握菜单、工具栏的制作过程。2) 学会设计简单的窗口界面,并编写不太复杂的应用程序。基本内容6. 1常用控件6. 1.1单选按钮、复选框、框架单选按钮(Opti on Butt on )又称选项按钮,用来显示一个可以打开或关闭的选项,一般成组出现,用户每次只能在一组单选按钮中选择其一。其默认名称为 OptionN (N为1,

48、2, 3)。复选框的常用属性和单选按钮的常用属性大致相同, Alignment属性用来设置单选按钮标题的对齐方式。当值为0时,为默认值,标题在控件对象的右侧;当值为1时,标题在控件对象的左侧。 Value属性用来表示单选按钮的状态。当值为True,表明该按钮处于选中状态,按钮的圆圈中有点;当值为 False,则表明没被选中,按钮的圆圈中没有点。复选框的Value属性可以取0、1和2,分别表示该复选框未选中、选中和变灰(暂时不能访 问)3种状态。框架(Frame)是个容器控件,常用于将其他控件对象按功能分组,既实现了界面上功能的分割,又保证了界面的整齐美观,默认名称为FrameN ( N为1,

49、2, 3)。例8-1,修改字体颜色。6. 1 . 2列表框、组合框常用属性MultiSelect ()值禁止多选Listi ndex被选中项索引号List列表项内容ListCo unt列表项数目Text被选中项内容Selected成员是否选中Style外观类型Sorted列表项排序方式List是个字符型数组, 存放列表框、组合框的选项。List1 . list(0)="北京”、list1 . list(4)= "常州”。当选中"北京”时,listindex=0 , List1 . Text="北京” ,List1 . list(listindex)=&q

50、uot;北 京”,List1 . Selected(0)=True。选中最后项时 listi ndex= ListCou nt-1,未选任何项时 list in dex=-1。 方法AddItem方法 用来向列表框中增加项目。调用格式:对象名 AddItem列表项内容,插入位置下标Removeitem方法用于删除指定位置的列表项。调用格式:对象名 Removeltem删除项下标Clear方法删除或清空列表框和组合框中所有的列表项。调用格式:对象名.Clear例8-2,装机清单。6.1. 3滚动条、图形控件常用属性Name滚动条名称SmallCha nge滑块滚动的小增量值LargeCha nge滑块滚动的大增量值Max滚动条的最大值Min滚动条的最小值Value当前滑块的位置事件(1) Change事件 该事件在滚动后发生,只要滑块位置发

温馨提示

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

评论

0/150

提交评论