VB的数组和结构

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

声明数组和给数组赋值
• 声明数组:
例如,为存储 2 到 20 之间的偶数声明一个数 组,
Dim even_arr(9) As Integer
• 给数组赋值:
例如,要给上面声明的数组赋值,
even_arr even_arr even_arr … … … even_arr (0) = 2 (1) = 4 (2) = 6 (9) = 20
Index 属性
• 控件数组中的所有元素具有相同的名称 • 通过使用称为 Index 属性的属性来分别 标识每个元素 • 索引可以帮助将特定的值赋给与特定控 件关联的属性
Index 属性 – 示例
• 改变在幻灯片15中创建的 cmdArray 命令 按钮数组中第0个和第1个按钮的caption 属性 cmdArray(0).caption = "退出" cmdArray(1).caption = "确定"
动态数组
• 动态数组与普通数组在概念上相类似 • 动态数组与普通数组的区别:
– 动态数组的大小在程序中是可变的 – 声明动态数组不需要指定维数
– 使用动态数组可以丢弃不需要的数据并释放 内存
定义动态数组
• 动态数组的声明与正常数组的声明相似 • 在声明时不需要指定任何维数 • 例如,
声明数组时
Dim num_arr() as Long
第四章
数组和结构
回顾
• • • • 基本数据类型 变量和常量 变量和常量的作用域 操作符和表达式
• 流程控制语句
目标
• 在 Visual Basic 中定义和使用数组 • 掌握控件数组的基本概念及使用 • 在 Visual Basic 中创建和使用自定义的数据 类型 • 使用随机函数
数组
• 单独Baidu Nhomakorabea变量能够存储单个数据值 • 数组是可以集中存储一组具有相同数据类 型的数据项的一种结构 • 使用数组的优势:数组中的所有值都用单 个名称来存储,并可以使用位置索引分别 进行标识
(在VB环境中进行演示)
定义数组的下界
• 数组的下界可以不为 0 • 在 Dim 语句中,可以显式地指定所声明 的数组的下界 • 示例
Dim Mynames (1 to 5) as string ‘可以按如下所示对该数组赋值: Mynames(1) =“Tom” Mynames(2) =“Joe” Mynames(3) =“Jack” Mynames(4) =“Lisa” Mynames(5) =“Jeff”
Tom Joe Lucy Ted
25 22 24 25
Harry
23
使用数组元素
• 要显示上一张幻灯片创建的数组中所有 元素的值
0 1
0
1 2 3 4
Tom
Joe Lucy Ted Harry
25
22 24 25 23
Dim i, j As Integer For i = 0 To 4 For j = 0 To 1 Print stud_age(i, j) Next j Next i
多维数组
(0,0) (1,0) 定义了一个5行 2列的Variant类 型的数组 (2,0) (3,0)
(0,1) (1,1) (2,1) (3,1)
(4,0)
(4,1)
为多维数组赋值
• 可用下面的语句为二维数组赋值
Dim stud_age(4,1) stud_age(0,0) = "Tom" stud_age(0,1) = 25 stud_age(1,0) = "Joe" stud_age(1,1) = 22 stud_age(2,0) = "Lucy" stud_age(2,1) = 24 stud_age(3,0) = "Ted" stud_age(3,1) = 25 stud_age(4,0) = "Harry" stud_age(4,1) = 23
(在VB环境中进行演示)
控件数组 2-1
• 可以将相关的并且是相同类型的控件组合到 一种称为“控件数组”的结构中
• 示例:在VB环境中创建名为 cmdArray 的命 令按钮的控件数组
控件数组 2-2
• 控件数组中的控件共享公用的属性、事件 、名称和类型 • 控件数组中的每个控件称为控件数组的一 个元素 • 控件数组中的控件可以在运行时创建
控件数组的事件编程
• 对于与控件数组相关联的特定事件,该 控件数组中的所有元素共享相同的事件 代码 • 根据与控件相关联的索引来触发控件的 事件
控件数组的事件编程 – 示例
(在VB环境中进行演示)
使用自定义数据类型
• 可能会需要将与相同实体相关的不同数 据类型的值存储在一起,这种结构称为 记录。例如:要存储学生的相关信息
动态数组 – 示例
Private Sub Form_Click() Dim num_arr() As Integer Dim intNum, i As Integer intNum = InputBox("请输入动态数组中元素的个数") '重定义动态数组 ReDim num_arr(intNum) '给动态数组赋值 For i = 0 To intNum num_arr(i) = i + 10 Next i MsgBox "数组中第一个元素的值为:" & num_arr(0) ReDim num_arr(3) MsgBox "重定义后数组中第一个元素的值为:" & num_arr(0) End Sub
定义了一个共 有10个元素的 整型数组
使用数组 – 示例
Private Sub Form_Click() Dim num(10) As Integer Dim i As Integer For i = 0 To 9 num(i) = i + 1 Print num(i) Next i End Sub
运行时使用ReDim语句指定数组的维数和实际大小
ReDim num_arr(10)
重定义动态数组
• 在重定义动态数组时,应注意:
– ReDim 语句与 Dim 语句不同,只能在函数和过 程中出现,后者可以在过程外出现 – ReDim 语句无法更改与数组关联的数据类型 – 连续的 ReDim 语句可以更改数组的边界,但无 法更改数组的维数 – 每执行一次ReDim语句,当前数组中的值将会丢 失
相关文档
最新文档