⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 5.htm

📁 vb基础教程源文件 处学者必备
💻 HTM
📖 第 1 页 / 共 2 页
字号:
<p><strong>例 </strong>:<span lang=EN-US> Dim C ( -1 To 5 , 4 ) As Long <br>
声明了 C 是数组名、长整型、二维数组、第一维下标范围为 -1 ~ 5 ,第二维下标的范围是 0 ~ 4 , 占据 7x 5 个长整型变量的空间。 </span></p>

<p><strong><span lang=EN-US>3. 注意事项 </span></strong></p>

<p>(<span lang=EN-US>1) 在有些语言中,下界一般从 1 开始,为了便于使用,在 VB 的窗体层或标准模块层用 <strong>Option
Base n </strong>语句可重新设定数组的下界,如 Option Base 1 。 <br>
(2) 在数组声明中的下标关系到每一维的大小,是数组说明符,而在程序其他地方出现的下标为数组元素,两者写法相同,但意义不同。 <br>
(3) 在数组声明时的下标只能是常数,而在其他地方出现的数组元素的下标可以是变量。 </span></p>

<p align=center style='text-align:center'><strong><span lang=EN-US>5.3 动态数组及声明 </span></strong></p>

<p><strong><span lang=EN-US>1. 动态数组的建立与声明 </span></strong></p>

<p>建立动态数组的方法是:利用<span lang=EN-US> Dim 、 Private 、 Public 语句声明括号内为空的数组,然后在过程中用
ReDim 语句指明该数组的大小。语法是: <br>
<strong>ReDim 数组名 ( 下标 1[ , 下标 2 … ] ) [ As 类型 ] </strong><b><br>
</b>其中下标可以是常量,也可以是有了确定值的变量,类型可以省略,若不省略,必须与 Dim 中的声明语句保持一致。 </span></p>

<p>例:<span lang=EN-US> Dim D () As Single <br>
     Sub Form_Load () <br>
…… <br>
     ReDim D ( 4 , 6 ) <br>
…… <br>
End Sub </span></p>

<p><strong><span lang=EN-US>2. 注意事项 </span></strong></p>

<p>(<span lang=EN-US> 1 )在动态数组 ReDim 语句中的下标可以是常量,也可以是有了确定值的变量; <br>
( 2 )在过程中可以多次使用 ReDim 来改变数组的大小,也可改变数组的维数。 <br>
( 3 )每次使用 ReDim 语句都会使原来数组中的值丢失,可以在 ReDim 语句后加 Preserve 参数来保留数组中的数据,但使用 Preserve
只能改变最后一维的大小,前面几维大小不能改变。 </span></p>

<p><strong><span lang=EN-US>3. 动态数组使用示例 </span></strong></p>

<p align=center style='text-align:center'><strong><span lang=EN-US>5.4 数组的基本操作 </span></strong></p>

<p><strong><span lang=EN-US>1. 给数组元素赋初值 </span></strong></p>

<p><strong>(<span lang=EN-US>1) 利用循环结构 </span></strong></p>

<p>例:<span lang=EN-US> Dim iA(1 To 10) As Integer <br>
For i=1 To 10 <br>
          A(i)=0 <br>
       Next i </span></p>

<p><strong>(<span lang=EN-US>2) 利用 Array 函数 </span></strong></p>

<p>例:<span lang=EN-US> Dim a As Variant, b As Variant, i% <br>
<strong>a = Array (1,2,3,4,5) </strong><b><br>
<strong>        b = Array (&quot;abc&quot;,&quot;def&quot;,&quot;67&quot;) </strong><br>
</b>For i=0 To Ubound (a) <br>
            Picture1.print a(i);&quot;&quot;; <br>
          Next i <br>
For i=0 To Ubound (b) <br>
Picture1.print b(i);&quot;&quot;; <br>
Next i </span></p>

<p><strong><span lang=EN-US>2. 数组的输入 </span></strong></p>

<p><strong> <span lang=EN-US>(1) 通过 InputBox 函数输入 </span></strong>适合输入少量数据。 </p>

<p>例:<span lang=EN-US> Dim sB(3,4) As singer <br>
For i=0 To 3 <br>
For j=0 To 4 <br>
SB(i,j) =InputBox(&quot;输入&quot; &amp; i &amp; j &amp; &quot;的值&quot;)&lt;/SPAN&gt;
<br>
Next j <br>
Next i </span></p>

<p><strong> <span lang=EN-US>(2) 通过文本框控件输入 </span></strong></p>

<p>对大批量的数据输入,采用文本框和函数<span lang=EN-US> split()\join() 进行处理,效率更高。 </span></p>

<p><strong><span lang=EN-US>3. 数组的赋值 </span></strong></p>

<p>在<span lang=EN-US> VB6.0 中可以直接将一个数组的值赋值给另一个数组: <br>
Dim a(3) as integer, b() as integer <br>
A(0)=2: A(1)=5: A(2)=-2: A(3)=2 <br>
<strong>b=a </strong><br>
在早期的 VB 中,这需要用循环语句才可以实现: <br>
ReDim b(UBound(a)) <br>
For I=0 to UBound(a) <br>
b(I)=a(I) <br>
Next i </span></p>

<p><strong>注意 </strong>:(<span lang=EN-US> 1 )赋值号两边的数据类型必须一致; <br>
( 2 )如果赋值号左边的是一个动态数组,则赋值时系统自动将动态数组 ReDim 成右边相同大小的数组; <br>
( 3 )如果赋值号左边的是一个大小固定的数组,则数组赋值出错。 </span></p>

<p><strong><span lang=EN-US>4. 数组的输出 </span></strong></p>

<p>用<span lang=EN-US> For …… Next 循环语句输出。 </span></p>

<p><strong><span lang=EN-US>5. 求数组中最大元素和所在下标及各元素之和 </span></strong></p>

<p>求数组中最大元素及下标,一般假设第一个元素及下标为最大,然后将该数与数组中的其他元素逐一比较,若有比其大的就替换,同时替换下标。 </p>

<p><strong><span lang=EN-US>6. 交换数组中各元素 </span></strong></p>

<p>交换的要求是将数组第一个元素与最后一个交换,第二个与倒数第二个交换,依次类推。 </p>

<p align=center style='text-align:center'><strong><span lang=EN-US>5.5 控件数组 </span></strong></p>

<p><strong><span lang=EN-US>1. 控件数组的概念 </span></strong></p>

<p>控件数组是由一组相同类型的控件组成的,它们共用一个控件名,具有相同的数组。控件数组适用于若干个控件执行的操作相似的场合,控件组共享同样的事件过程。 控件数组通过索引号(属性中的
<strong><span lang=EN-US>Index </span></strong>)来标识各控件,第一个下标是<span lang=EN-US>
0 。如: Text1(0) 、 Text1(1) 、 Text1(2) 、 Text1(3) …… </span></p>

<p><strong><span lang=EN-US>2. 控件数组的建立 </span></strong></p>

<p><strong>(<span lang=EN-US>1) 在设计时建立 </span></strong><span lang=EN-US><br>
步骤: 1 )在窗体上画出某控件,并进行属性设置 。 <br>
      2 )选中该控件进行“复制”和“粘贴”操作,系统提示“是否建立控件数组”,选择是即可。多次粘贴就可以创建多个控件元素。 <br>
      3 )进行事件过程的编程。 </span></p>

<p><strong>(<span lang=EN-US>2) 运行时添加控件数组 </span></strong></p>

<p><strong>方法: </strong><span lang=EN-US>1 )在窗体上画出某控件,设置该控件的 Index 值为 0 ,表示该控件为数组。
<br>
2 )在编程时通过 Load 方法添加其余若干个元素,也可以通过 Unload 删除某个添加的元素。 <br>
3 )每个添加的控件数组通过 Left 和 Top 属性,确定其在窗体上的位置,并将 Visible 设置为 True 。 </span></p>

<p><strong>使用示例 </strong>:建立一个类似国际象棋的棋盘,要求黑白交替,运行时单击某个棋格,会改变颜色并显示其序号。 </p>

<p align=center style='text-align:center'><strong><span lang=EN-US>5.6 自定义数据类型 </span></strong></p>

<p><strong><span lang=EN-US>1. 自定义数据类型的定义 </span></strong></p>

<p>是指由若干标准数据类型组成的一种复合类型,也称为记录类型。 </p>

<p>(<span lang=EN-US> 1 )定义方式: </span></p>

<p><strong>  <span lang=EN-US>Type </span></strong>自定义类型名<span lang=EN-US> <br>
元素名 [ (下标) ] <strong>As </strong>类型名 <br>
…… <br>
元素名 [ (下标) ] <strong>As </strong>类型名 <br>
<strong>End Type </strong></span></p>

<p>元素名:表示自定义类型中的一个成员<span lang=EN-US> <br>
下标(可选):表示是数组, <br>
类型名:为标准类型 </span></p>

<p>例:定义一个学生信息的自定义类型:<span lang=EN-US> <br>
<strong>Type studtype </strong><b><br>
<strong>       No As Integer </strong></b>' 定义学号 <br>
<strong>Name As String*10 </strong>' 定义姓名 <br>
<strong>  Sex As String*2 </strong>' 定义性别 <br>
<strong>  Mark(1 TO 4) As Single </strong>' 定义 4 门课程的成绩 <br>
<strong>Total As Single </strong>' 定义总分 <br>
<strong>End Type </strong></span></p>

<p>(<span lang=EN-US> 2 )注意事项 </span></p>

<p>  <span lang=EN-US>1 )自定义类型一般在标准模块( .bas )中定义,默认是 Public <br>
2 )自定义类型中的元素可以是字符串 , 但应是定长字符串 <br>
3) 不可把自定义类型名与该类型的变量名混淆 <br>
4) 注意自定义类型变量与数组的差别:它们都由若干元素组成,前者的元素代表不同性质、不同类型的数据,以元素名表示不同的元素;后者存放的是同种性质、同种类型的数据,以下标表示不同元素。
</span></p>

<p><strong><span lang=EN-US>2. 自定义型变量的声明和使用 </span></strong></p>

<p>使用形式: <strong><span lang=EN-US>Dim 变量名 As 自定义类型名 </span></strong><b><span
lang=EN-US><br>
</span></b>例如: <strong><span lang=EN-US>Dim student As studtype , mystud As
studtype </span></strong><b><span lang=EN-US><br>
</span></b>自定义类型中元素的表示方法是: <strong>变量名<span lang=EN-US> . 元素名 </span></strong>如:
<strong><span lang=EN-US>student.name student.mark(4) </span></strong><b><span
lang=EN-US><br>
</span></b>为了简单起见,可以用<span lang=EN-US> With …… End With 语句进行简化。 例: <br>
With student <br>
.no=99001 <br>
.name=&quot;&quot; <br>
.sex=&quot;&quot; <br>
.total=0 <br>
for I=1 to 4 <br>
.mark(I)=int(rnd*101) '随机产生0 - 100之间的分数 <br>
     .total=.total+.may(I) <br>
next I <br>
End With <br>
Mystud=student ' 同种自定义类型变量可以直接赋值 </span></p>

<p><strong><span lang=EN-US>3. 自定义类型数组的使用 </span></strong></p>

<p>自定义类型数组就是数组中的每个元素都是自定义类型。<span lang=EN-US> <br>
例如:自定义一个由学生姓名、成绩组成的学生记录类型,用来存放 100 个学生的记录。 </span></p>

</div>

</body>

</html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -