Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vb.net 初始化代码中的新标签-崩溃_Vb.net_Arrays_Vb6_Controls_Vb6 Migration - Fatal编程技术网

Vb.net 初始化代码中的新标签-崩溃

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)

我正在将一个应用程序从VB6转换为VB.NET,我需要在代码中声明和初始化一些控件(控件数组)。我将其全局声明,以便其他表单可以访问存储在其中的数据,然后我尝试在Form_Load()子中操作它们:

我得到的错误是“对象引用未设置为对象的实例”。我觉得我错过了一些重要的东西,但这有什么问题吗


谢谢

首先,您必须实例化
标签的数组
。您可以使用
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