Vb.net 初始化代码中的新标签-崩溃
我正在将一个应用程序从VB6转换为VB.NET,我需要在代码中声明和初始化一些控件(控件数组)。我将其全局声明,以便其他表单可以访问存储在其中的数据,然后我尝试在Form_Load()子中操作它们: 我得到的错误是“对象引用未设置为对象的实例”。我觉得我错过了一些重要的东西,但这有什么问题吗Vb.net 初始化代码中的新标签-崩溃,vb.net,arrays,vb6,controls,vb6-migration,Vb.net,Arrays,Vb6,Controls,Vb6 Migration,我正在将一个应用程序从VB6转换为VB.NET,我需要在代码中声明和初始化一些控件(控件数组)。我将其全局声明,以便其他表单可以访问存储在其中的数据,然后我尝试在Form_Load()子中操作它们: 我得到的错误是“对象引用未设置为对象的实例”。我觉得我错过了一些重要的东西,但这有什么问题吗 谢谢首先,您必须实例化标签的数组。您可以使用ReDim()或New关键字: Private Sub Form_Load() Handles Me.Load ReDim lblDataZone(0)
谢谢首先,您必须实例化
标签的数组
。您可以使用ReDim()
或New
关键字:
Private Sub Form_Load() Handles Me.Load
ReDim lblDataZone(0) 'Or lblDataZone = New Label(0) {}
lblDataZone(0) = New Label
With lblDataZone(0)
.Height = 13
.Text = "Zone (l/min)"
.Left = 6
.Top = 42
End With
....
更改第一个PUBLIC以分配具有所需维度的数组,而不仅仅是声明它:
Public lblDataZone(99) As Label
Private Sub Form_Load() Handles Me.Load
lblDataZone(0) = New Label
With lblDataZone(0)
.Height = 13
.Text = "Zone (l/min)"
.Left = 6
.Top = 42
End With
Public lblDataZone(99) As Label
Private Sub Form_Load() Handles Me.Load
lblDataZone(0) = New Label
With lblDataZone(0)
.Height = 13
.Text = "Zone (l/min)"
.Left = 6
.Top = 42
End With