📄 dynamic.frm
字号:
VERSION 5.00
Begin VB.Form frmDynamic
Caption = "Fig. 7.14: Dynamic Arrays"
ClientHeight = 2490
ClientLeft = 2040
ClientTop = 2415
ClientWidth = 4620
LinkTopic = "Form1"
ScaleHeight = 2490
ScaleWidth = 4620
Begin VB.CommandButton cmdErase
Caption = "Erase"
Enabled = 0 'False
Height = 495
Left = 3255
TabIndex = 5
Top = 1320
Width = 1215
End
Begin VB.CheckBox chkPreserve
Caption = "Preserve"
Height = 495
Left = 3255
TabIndex = 4
Top = 1800
Width = 1215
End
Begin VB.CommandButton cmdPrint
Caption = "Display"
Height = 495
Left = 3255
TabIndex = 2
Top = 720
Width = 1215
End
Begin VB.ListBox lstValues
Height = 1620
Left = 30
TabIndex = 3
Top = 720
Width = 3045
End
Begin VB.TextBox txtInput
Height = 405
Left = 2850
TabIndex = 0
Top = 120
Width = 1215
End
Begin VB.Label lblPrompt
Caption = "Enter array size and press Display:"
Height = 285
Left = 300
TabIndex = 1
Top = 180
Width = 2520
End
End
Attribute VB_Name = "frmDynamic"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
' Fig. 7.14
' Demonstrating dynamic arrays
Option Explicit
Option Base 1
Dim mDynamic() As Integer
Private Sub cmdErase_Click()
Erase mDynamic ' Free memory
Call lstValues.Clear
cmdErase.Enabled = False
chkPreserve.Value = vbUnchecked ' Uncheck Preserve
End Sub
Private Sub cmdPrint_Click()
Dim arrayLength As Integer, x As Integer
Call lstValues.Clear
arrayLength = txtInput.Text
' Determine state of CheckBox
If chkPreserve.Value = vbUnchecked Then ' Unchecked
ReDim mDynamic(arrayLength) ' Allocate memory
Call InitArray ' Initialize to defaults
ElseIf chkPreserve.Value = vbChecked Then ' Checked
' Allocate memory and preserve contents
ReDim Preserve mDynamic(arrayLength)
End If
' Display index and array contents in ListBox
For x = LBound(mDynamic) To UBound(mDynamic)
Call lstValues.AddItem("Index: " & x & vbTab & _
vbTab & "Value: " & mDynamic(x))
Next x
cmdErase.Enabled = True
End Sub
Private Sub InitArray()
Dim x As Integer
' Generate some data
For x = LBound(mDynamic) To UBound(mDynamic)
mDynamic(x) = Int(51 * Rnd())
Next x
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -