1 / 91

VB 语言简介

VB 语言简介. VB 数据类型 VB 变量 VB 常数 VB 运算符 条件判断语句 循环、重复语句 VB 过程 对代码进行注释. VB 数据类型. 基本数据类型 Integer Double Byte Long String …. 基本数据类型. 基本数据类型. 基本数据类型. 用户自定义类型 (user-defined type,UDT).

Download Presentation

VB 语言简介

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. VB语言简介 • VB 数据类型 • VB 变量 • VB 常数 • VB 运算符 • 条件判断语句 • 循环、重复语句 • VB 过程 • 对代码进行注释

  2. VB 数据类型 • 基本数据类型 • Integer • Double • Byte • Long • String • …

  3. 基本数据类型

  4. 基本数据类型

  5. 基本数据类型

  6. 用户自定义类型(user-defined type,UDT) • using the Structure statement, and you declare variables associated with the new type by using the Dim statement. Structure Employee Dim Name As String Dim DateOfBirth As Date Dim HireDate As Date End Structure Dim ProductManager As Employee ProductManager.Name = "Greg Baker"

  7. 类型转换函数

  8. 类型转换函数

  9. 类型转换函数

  10. 类型转换函数

  11. VB 变量 • 什么是变量? • 变量是一种使用方便的占位符,用于引用计算机内存地址,该地址可以存储 VB 运行时可更改的程序信息。 • 例如,可以创建一个名为 ClickCount 的变量来存储用户单击某个对象的次数。 • 使用变量并不需要了解变量在计算机内存中的地址, • 只要通过变量名引用变量就可以查看或更改变量的值。

  12. 声明变量 • 声明变量的一种方式是使用Dim语句在 VB 中显式声明变量。例如: Dim sars as <数据类型> 声明多个变量时,使用逗号分隔变量。例如: Dim Top as interger, Bottom as integer • 另一种方式是通过直接在 VB 中使用变量名这一简单方式隐式声明变量。 • 这通常不是一个好习惯,因为这样有时会由于变量名被拼错而导致在运行 VB 时出现意外的结果。 • 最好使用 Option Explicit语句显式声明所有变量,并将其作为 VB 的第一条语句

  13. 命名规则 • 变量命名必须遵循 VB 的标准命名规则。变量命名必须遵循: 第一个字符必须是字母。 不能包含嵌入的句点。 长度不能超过 255 个字符。 在被声明的作用域内必须唯一。

  14. VB中的变量作用范围

  15. 变量作用范围的使用 • 变量应该总是被定义在尽可能小的范围内。 • 慎用全局变量(Public) • 全局变量可以导致极其复杂的程序结构 • 使一个应用程序的逻辑非常难于理解。 • 全局变量使代码的重用和维护更加困难 • 只有当没有其它方便途径在窗体之间共享数据时才使用全局变量。必须用时,在一个模块中声明并按功能分组。给这个模块取一个有意义的名称,以指明它的作用

  16. 给变量赋值 • 创建如下形式的表达式给变量赋值:变量在表达式左边,要赋的值在表达式右边。例如: intB = 200 strName = “WHUISS”

  17. 标量变量和数组变量 • 多数情况下,只需为声明的变量赋一个值。 • 只包含一个值的变量被称为标量变量。 • 有时候,将多个相关值赋给一个变量更为方便,因此可以创建包含一系列值的变量,称为数组变量。 • 缺省的下界为 0 • 例如:DimA(10)’这个DIM语句声明了一个可以存储11个值的数组。 • 用关键字 To 显式规定下界( Long 数据类型,上界不得超过 Long 数据类型的范围(-2,147,483,648 到 2,147,483,647) ) • 例如: Dim Counters (1 To 15) As Integer • 例如: Dim Sums (100 To 120) As String

  18. 为数组的每个元素赋值 • 在数组中使用索引为数组的每个元素赋值。如下所示: A(0) = 256 A(1) = 324 . . . A(10) = 55 与此类似,使用索引可以检索到所需的数组元素的数据。例如: SomeVariable = A(8) . . .

  19. 多维数组 • 数组并不仅限于一维。数组的维数最大可以为 60(尽管大多数人不能理解超过 3 或 4 的维数)。 Dim MyTable(5, 10) as <数据类型> • 注意 在增加数组的维数时,数组所占的存储空间会大幅度增加,所以要慎用多维数组。 • 使用 Variant 数组时更要格外小心,因为他们需要更大的存储空间。

  20. VB 常数 • 什么是常数? 常数是具有一定含义的名称的变量,用于代替数字或字符串,其值从不改变。 创建常数 可以使用 Const语句在 VB 中创建用户自定义常数。使用 Const语句可以创建名称具有一定含义的字符串型或数值型常数,并给它们赋原义值。例如: Const conMyString As String = “这是一个字符串。” Const conMyAge As Integer = 49 Const Pi As Double = 3.14159265 Public Const Pi As Double = 3.14159265 ‘To make the constant available to all the forms and modules in a program

  21. VB 运算符 • 算术运算符 • 比较运算符 • 连接运算符 • 逻辑运算符

  22. Visual Basic Operators

  23. New Shortcut Operators

  24. Establishing Order of Precedence

  25. comparison operators

  26. Using Logical Operators in Conditional Expressions

  27. Short-Circuiting by Using AndAlso and OrElse • Here's an example of the short-circuit situation in Visual Basic, a simple routine that uses an If statement and an AndAlso operator to test two conditions and display the message “Inside If” if both conditions are True: Dim Number As Integer = 0 If Number = 1 AndAlso MsgBox("Second condition test") Then MsgBox("Inside If") Else MsgBox("Inside Else") End If

  28. 算术运算符和逻辑运算符的优先级

  29. 优先级 • 当表达式包含多种运算符时, • 首先计算算术运算符, • 然后计算比较运算符, • 最后计算逻辑运算符。 • 所有比较运算符的优先级相同,即按照从左到右的顺序计算比较运算符。

  30. 使用条件语句 • 控制程序执行 使用条件语句和循环语句可以控制程序 的流程。使用条件语句可以编写进行判断和重复操作的 VB 代码。在 VB 中可使用以下条件语句: If...Then...Else语句 Select Case语句

  31. 使用 If...Then...Else 进行判断 • If...Then…[Else…]语句用于计算条件是否为 True或 False,并且根据计算结果指定要运行的语句。通常,条件是使用比较运算符对值或变量进行比较的表达式。 • myDate = #2/13/95# If myDate < Now Then myDate = Now

  32. If中要运行多行代码 • If中要运行多行代码,必须使用多行(或块)语法。多行(或块)语法包含 End If语句,如下所示: If value = 0 Then AlertLabel.ForeColor=vbRed AlertLabel.Font.Bold=True AlertLabel.Font.Italic=True End If

  33. 多个 ElseIf If value = 0 Then MsgBox value ElseIf value = 1 Then MsgBox value ElseIf value = 2 then Msgbox value Else Msgbox “数值超出范围!” End If • 可以添加任意多个 ElseIf子句以提供多种选择。使用多个 ElseIf子句经常会变得很累赘。在多个条件中进行选择的更好方法是使用 Select Case语句。

  34. 使用 Select Case 进行判断 Select Case testexpression[Case expressionlist1 [statementblock-1]][Case expressionlist2 [statementblock-2]].. . [Case Else [statementblock-n]] End Select • Select Case结构在其开始处使用一个只计算一次的简单测试表达式。 • 表达式的结果将与结构中每个 Case的值比较。 • 如果匹配,则执行与该 Case关联的语句块:

  35. Select Case text Case “a“ sub_a Case “b" sub_b Case “c" sub_c Case Else sub_d End Select

  36. 使用循环重复执行代码 • 在 VB 中可使用下列循环语句: • Do...Loop: 当(或直到)条件为 True时循环。 • While...Wend: 当条件为 True时循环。 • For...Next: 指定循环次数,使用计数器重复运行语句。 • For Each...Next: 对于集合中的每项或数组中的每个元素,重复执行一组语句。

  37. 使用 Do 循环 • 当条件为 True 时重复执行语句 Dim counter, myNum counter = 0 myNum = 20 Do While myNum > 10 myNum = myNum - 1 counter = counter + 1 Loop MsgBox "循环重复了 " & counter & " 次。"

  38. 重复执行语句直到条件变为 True,只要条件为 False,就会进行循环。 • Dim counter, myNum counter = 0 myNum = 20 Do Until myNum = 10 myNum = myNum - 1 counter = counter + 1 Loop MsgBox "循环重复了 " & counter & " 次。"

  39. 退出循环 • Exit Do语句用于退出 Do...Loop循环。 • Dim counter, myNum counter = 0 myNum = 9 Do Until myNum = 10 myNum = myNum - 1 counter = counter + 1 If myNum < 10 Then Exit Do Loop MsgBox "循环重复了 " & counter & " 次。

  40. 使用 While...Wend • While...Wend语句是为那些熟悉其用法的用户提供的。 • 但是由于 While...Wend缺少灵活性,所以建议最好使用 Do...Loop语句。

  41. 使用 For...Next • For...Next语句用于将语句块运行指定的次数。在循环中使用计数器变量,该变量的值随每一次循环增加或减少。 For counter = start To end [Step increment] statements Next [counter] • Dim x For x = 1 To 50 MyProc Next

  42. 关键字 Step用于指定计数器变量每次增加或减少的值。 • Dim j, total For j = 2 To 10 Step 2 total = total + j Next

  43. 要使计数器变量递减,可将 Step设为负值。此时计数器变量的终止值必须小于起始值 • Dim myNum, total For myNum = 16 To 2 Step -2 total = total + myNum Next

  44. 使用 For Each...Next • For Each...Next循环与 For...Next循环类似。For Each...Next不是将语句运行指定的次数,而是对于数组中的每个元素或对象集合中的每一项重复一组语句。这在不知道集合中元素的数目时非常有用。 For Each element In groupstatements Next element

  45. VB 过程 • 在 VB 中,过程被分为两类:Sub过程和 Function过程

  46. Sub 过程 • Sub过程是包含在 Sub和 End Sub语句之间的一组 VB 语句,执行操作但不返回值。Sub过程可以使用参数(由调用过程传递的常数、变量或表达式)。如果 Sub过程无任何参数,则 Sub语句必须包含空括号 ()。 Sub ProcedureName([arguments]) procedure statements End Sub • Sub ConvertTemp() temp = InputBox(“请输入华氏温度。”, 1) MsgBox “温度为 ” & Celsius(temp)&“摄氏度。” End Sub

  47. Function 过程 • Function过程与 Sub过程类似,但是 Function过程可以返回值。 • Function过程通过函数名返回一个值,这个值是在过程的语句中赋给函数名的。 • Function返回值的数据类型是函数定义时的类型,也可以是Variant、对象。 Function FunctionName([arguments]) As Type function statements [Return value] End Function

  48. 过程示例 • Sub ConvertTemp() temp = InputBox(“请输入华氏温度。”, 1) MsgBox “温度为 ” & Celsius(temp)&“摄氏度。” End Sub Function Celsius(byval fDegrees as double) as double Celsius = (fDegrees - 32) * 5 / 9 End Function

  49. 在代码中使用 Sub 和 Function 过程 • 调用 Function过程时,函数名必须用在变量赋值语句的右端或表达式中。例如: Temp = Celsius(fDegrees)或 MsgBox "温度为 " & Celsius(fDegrees) & " 摄氏度。"

  50. 在代码中使用 Sub 和 Function 过程 • 调用 Sub过程时,需输入过程名及所有参数值,参数值之间使用逗号分隔。 MyProc(firstarg, secondarg)

More Related