1 / 65

VB6 编程基础

VB6 编程基础. 基本概念 变量、常量和数据类型 VB 语句与控制流 过程 常用函数. VB 的基本概念之一:标识符. 标识符:变量、常量、数据类型、过程、函数、类等定义的名字。 规则:必须以字母( A-Z、a-z)、 数字(0-9)或下划线,长度不能超过255个字符,且标识符不能与 VB 的关键字同名。

emory
Download Presentation

VB6 编程基础

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. VB6编程基础 • 基本概念 • 变量、常量和数据类型 • VB语句与控制流 • 过程 • 常用函数

  2. VB的基本概念之一:标识符 • 标识符:变量、常量、数据类型、过程、函数、类等定义的名字。 • 规则:必须以字母(A-Z、a-z)、数字(0-9)或下划线,长度不能超过255个字符,且标识符不能与VB的关键字同名。 • 例如:Dim Mystring As String Const Pi=3.1415926 Public function getvalue() As Integer

  3. VB6的关键字 • VB6的关键字有:As Binary ByRef ByVal Date Else Empty Error False For Friend Get Input Is Len Let Lock Me Mid New Next Nothing Null On Option Optional ParamArray Print Private Property Public Resume Seek Set Static Setp String Then Time To True WithEvents

  4. VB的数据类型(一) • Boolean(布尔型):占用2字节 • Byte(字节):占用1字节。 • Integer(整型):类型标识%,占用2字节。 • Long(长整型):标识“&”,4字节。 • Single(单精度型):标识“!”,占用4字节。 • Double(双精度型):标识“#”,8字节。 • Currency(货币型):标识“@”,8字节。 • Date(日期型):8字节。 • String(字符串、变长):标识“$”,10字节+串长。

  5. VB的数据类型(二) • String(字符串、定长):标识“$”,串长。 • Object(对象型):占用4字节。 • Variant(变体、数值):占用16字节。 • 自定义(User_define):元素申请的长度之和。

  6. VB的变量 • 变量名的命名遵从标识符命名规则。 • 变量的声明:VB可以使用不声明的变量。如:Form的Click过程,加入下列代码:Private sub Form_click() Stringtext$=“Hello,World!” print “*********”,Stringtext$ end sub

  7. VB变量的声明 • 格式:Dim 变量 AS 类型 :说明局部变量 • 格式2:Private 变量 As 类型 :说明私有变量 • 格式3:Public 变量 As 类型 :说明公告全局变量 • 格式4:Static 变量 As 类型 : 说明静态变量

  8. VB变量声明示例 变量声明

  9. 变量声明应注意的问题 • Dim a,b,c As Integer是错误的。本意是将a,b,c都说明为Integer ,但实际上只有c被声明成Integer,而a,b缺省为Variant类型。 • 使用不带As的Dim语句,会被声明成Variant类型的变量。 • 对于声明boolean型的变量,其缺省值为False。 • 为声明为Date类型的变量赋值时,日期值应放在一对#之间,且多种日期和时间格式在VB中都是有效的。如: date1=#1-10-98#:date2=#10-1-98 12:20am#

  10. VB变量的作用域和生存期 • 变量的作用域是指变量的有效作用范围,也就是变量可以被访问的范围。 • VB按三种方式来定义变量的作用范围:过程(在过程内部使用Dim或Static)、私有(在模块开头加上Dim或Private)、公共(在模块开头加上Public) • 变量的生存期是指VB保存该变量值的时间,是变量在整个程序运行过程中的有效生存时间。

  11. 过程变量 • 是指在过程或函数内部定义的变量,这种变量无论是用Dim还是Static声明,其作用域都只是该过程或函数体,在过程函数外不能引用。因此,在不同的过程或函数中可以存在相同名字的变量。 • 使用Dim和Static声明的过程变量的作用域都是一样的,但生存期不一样。用Dim声明变量时,它的生存随着包含它的过程或函数的运行而终止,VB不再保留其值。用Static声明的变量,其生存期为整个程序,在包含它的过程或函数再次被调用时,VB将不会再次对它初始化,其值为上次过程或函数调用完成后的值。

  12. 过程变量示例一

  13. 过程变量示例二

  14. 窗体层变量 • 它是在窗体的通用部分声明的变量,即不是在任何一个窗体内的过程或函数中声明的变量。它的作用范围至少是窗体的存在范围,即是在窗体内的每个过程或函数中都可以使用窗体层变量。可以用Dim\Private\Public声明。 • 对于用Dim和Private声明的窗体层变量,其作用范围都是在所声明的窗体范围内。用Public声明的窗体变量作为窗体公用数据成员,作用可以大于当前窗体范围。引用方式是”窗体名.变量名“。

  15. 窗体层变量示例

  16. 模块层变量 • 在模块通用部分dim\private\global\public声明的变量。“模块”在“工程”中选择“添加模块”菜单项来实现。 • 用dim\private 声明的模块层变量作用域为所在模块范围,用public\global定义的模块层变量则可以全局使用。引用方式是“模块名.变量名“。

  17. 变量作用范围总结 全局变量 用public\global在模块声明 模块 模块级变量在通用中声明专用变量仅在此模块中可见 窗体 窗体级变量在通用中声明,专用变量仅在此窗体中可见 过程 局域变量 过程 局域变量

  18. VB的常量 • VB中的常量可分为:系统内在常量和符号常量。 • 系统内在常量:是系统提供的自身拥有的常量(如:表示颜色的常量P36)。可与应用程序的对象、方法和属性一起使用。 • 符号常量:程序中用Const声明的常量,声明后,我们就可以用常量名来引用其代表的常数。 • 例如:const pi=3.1415926

  19. VB符号常量的定义 • 语法:[Public|Private] Const 变量名[As 数据类型]=表达式。 • 其中Public 公有声明,使用Public声明的常量可在整个应用程序中使用,它必须在标准模块的声明区中使用。在窗体模块或类模块中不能声明Public常量。 • Private 是私有声明,可用在模块级声明常量(是指放在窗体、类或标准模块内的声明;Private关键字不能在过程声明变量时使用。

  20. 使用VB常量应注意的问题 • 用const声明的常量在程序运行过程中是不能被重新赋值的。 • 在常量声明的同时赋值。 • 可以为声明的常量指定数据类型,如 const conVal As Currency=3.78

  21. VB中的数组 • 数组是有相同数据类型的一组变量的集合。用Private、Public、Global或Dim语句来声明。 • 格式:Dim 数组名(lower,upper) As (type) • 如:Dim record(5) As Integer Dim Matrix(2,3) As Integer • 动态数组:带有空()的Dim 可以声明一个动态数组。如:Dim dnyArray()

  22. 静态数组 • 是指数组元素的个数是固定不变的,即它们占用的内存空间大小是固定不变的。 • 根据维数的不同,可分为一维数组和多维数组。

  23. VB动态数组 • 目的:根据需要来确定数目。 • 格式:Dim MyArry( ) As Integer • 在用时,必须使用ReDim语句把它重新定义(即具体化)。

  24. 静态数组和动态数组 • 静态数组是指数组元素的个数是不变的。 • 动态数组,可以在程序运行时根据需要,精确定义数组的大小。在声明数组时,不给出维数列表就是将数组声明为动态数组。如:Dim MyArry () As Integer 但使用时,还需使用ReDim语句把它重新定义,如ReDim MyArry(10,10)

  25. Lbound、Ubound函数与数组 • LBound函数和Ubound函数都是返回一个Long型数据,前者得到的值为指定数组维可用的最小下标,而后者得到的是最大下标。 • 格式:Lbound(数组名[,指定的维数]) Ubound(数值组名[,指定的维数])

  26. 使用数组时应注意 • 数组名命名规则和变量名的相同。 • 数组名后是用圆括弧,不能用方括弧。 • 下标的下界必须不能大于其上界。

  27. 记录类型数据 • 记录类型定义: [Private|Public] Type 记录类型名 成员列 End Type • 在记录类型中声明静态数时,必须用数字文字或常量而不能用变量来声明。 • 定义记录类型变量:用来说明拥有这种类型的变量,如:Dim stu1,stu2 As stu. • 记录类型变量的赋值和检索。

  28. VB的运算符 • 赋值运算符:用来给变量、变长数组或对象的属性赋值。把运算符右边的内容(包括常量、变量、函数返回值或对象的属性) • 格式:variable=value variable可以是变量、数组的元素、变长数组或对象的属性 value可以是常数、常量、变量、表达式或函数调用

  29. VB赋值运算示例 “=”运算 左 边 是 对象.属性

  30. 运算符使用示例 • Value=10 • Value=sin(3.14/4) • 10=pi • 3+x=40 • 使用赋值号应注意: 1、赋值号左边必须是变量或对象的属性,不能是数值、常量和表达式。 2、赋值号两端的数据类型应该匹配,不匹配时应进行适当转换。 3、给对象赋值时,只有运行时可改写的对象属性才能被赋值。

  31. VB运算符之一:数学运算符 • ∧:指数运算 • -:负号运算符 • * /:乘除运算,其中除法所得到的结果为实数 • \ :整除,所得到结果为实际结果的整数部分。 • MOD:取模运算,两数相除取余数。 • + - :加减运算。 • &、+: 连接字符。

  32. &与+连接运算符的区别 • &强制两个表达式(它们的类型可能不同)做字符串连接;而当+运算符两边的表达式中混有数值字符串及数值,其结果会是数值的求和,如果都是字符串则作“相加”,返回连接起来的字符串。 • 示例:Var1=“34”:Var2=6 MyNumber=Var1+Var2 返回40MyNumber=Var1&Var2 返回346

  33. VB数学运算符使用示例 数学运算

  34. VB运算符之一:关系运算符 • =:比较两表达式是否相等。等为真,否则为假。 • <>:比较表达式是否不等。不等为真,相等为假。 • > 或<:大小比较。 • >=或<=:大小比较。 • LIKE:用于比较两个字符串,模式匹配为真,否则为假。 • IS:比较两个对象是否一致,一致为真,否则为假。

  35. VB关系运算符使用示例 关系运算

  36. IS比较示例 • 有下列语句: Dim_ myobject,yourobject,thisobject,otherobject,mycheck set yourobject=myobject set thisobject=myobject set thatobject=otherobject mycheck=yourobject is thisobject ‘true mycheck=thatobject is thisobject ‘false

  37. LIKE示例 • 如:Dim Mycheck Mycheck=“aBBBa” like “a*a” ‘BBB与*相匹配,返回结果True • 见书P58

  38. VB的逻辑运算符 • 逻辑非(NOT)运算: • 逻辑与运算(AND) • 逻辑或(OR)运算 • 逻辑异或(XOR)和逻辑等(EQV)运算 • 隐含(Imp)运算

  39. VB语句与控制 • 赋值语句 • 注释语句:VB中用‘和rem来标识一条注释语句。 • 条件分支结构:if 语句 • 循环语句 • END语句

  40. VB赋值语句 • 包括两种:一种用来对一般的变量进行赋值的赋值语句,用关键字LET描述,但一般都省略。另一种是用来对对象的变量进行赋值的赋值语句,用关键字SET描述,不能省略。 • 格式:[let]变量或属性=表达式 set 变量(对象)=表达式

  41. VB注释语句 • 引入目的:为程序的阅读和修改提供信息,提高程序的可读性和可维护性。 • 注释方法有两种:’或REM关键字。 • 二者区别:在一行中做注释时,REM必须使用:与前面的语句隔开,撇号则不必。

  42. 条件分支——IF语句 • 第一种格式:if 条件 then 语句 end if 如果条件为true,则执行“语句”,否则执行end if后面语句。 第二种格式:if 条件 then 语句 else 语句 end if

  43. IF语句的第三种格式 • If 条件1 then 语句1 else if 条件2 then 语句2 else 语句3 end if 如果条件1为true,则执行语句1,如果为false,则检查条件2,如果条件2为true,则执行语句2,如果条件2为false,则执行语句3。

  44. 条件语句——select case语句 • 格式: select case 测试表达式 case 条件1 语句1 ……… case else 语句 end select VB将测试表达式的值与此同时结构中的每个case的值进行比较,如果相等,就执行与该case 相关的程序段,如果都不等,则执行case else所对应的程序段。

  45. Case 语句举例一 • 用select case…….语句判断0-9范围内整树的奇偶性。 select case Num_ten case 0,2,4,6,8 print “偶数“ case 1,3,5,7,9 print “奇数“ end select

  46. 循环语句:Do……Loop语句 • 第一种格式:Do While 条件式 [程序段] Loop 当条件为true时,循环继续,直到条件变为False为止。

  47. 示例一 • Private Sub Form_Click() Dim I As Integer I=1 Do While I<=5 Print I I=I+1 Loop End Sub

  48. Do ……Loop第二种格式 • Do Until 条件式 [程序段] Loop 当条件为false时,循环继续进行,直到条件式变为true为止。

  49. 示例二 • Private Sub Form_Click() Dim I As Integer I=1 Do Until I>5 Print I I=I+1 Loop End sub

  50. Do……Loop第三种格式 • Do [程序段] Loop While 条件式 当条件式为true时,循环继续进行,直到条件式变为false为止。

More Related