2011-03-05 349 views
0

我一直在嘗試在For循環中聲明相當長一段時間的變量,而我一直都沒有找到辦法。
我試圖創建一個新的圖像(瓷磚)每次在二維數組中遇到一定數量(測量32×16)。我可能需要添加在我使用的Visual Basic 6VB:在For循環中聲明變量

目前我使用下面的代碼:

Option Explicit 
Dim wCount As Integer 
Dim hCount As Integer 
Dim arrTiles(31, 15) As Integer 


Private Sub Form_Load() 
    For wCount = 0 To 31 Step 1 
     For hCount = 0 To 15 Step 1 
      ' -Declare variables 
      ' -I.E. Dim NAME As Image 
     Next 
    Next 
End Sub 

然而,上面的代碼(利用暗tile1作爲圖像)給我一個錯誤每當嘗試訪問新添加的圖像的某個屬性(如tile1.Width)時。

有什麼辦法在運行時以這種方式聲明變量嗎?

真誠
- Birjolaxew

+0

錯誤是一個NullReferenceException? – 2011-03-05 06:13:14

+0

@matt:否,「對象變量或未設置塊變量」。 – Birjolaxew 2011-03-05 06:27:55

回答

1

您嘗試訪問它的任何屬性之前,必須指定一個有效的Image對象的圖像變量。例如,這工作正常:

For wCount = 0 To 31 Step 1 
     For hCount = 0 To 15 Step 1 
      ' -Declare variables 
      Dim tile1 As Image 
      tile1 = Image.FromFile("c:/test.png") 
      Dim width = tile1.Width 
     Next 
    Next 
+0

謝謝!不過,我很害怕我需要更多的幫助。如果我試圖使用Image.FromFile(「PATH」),它說沒有找到這樣的函數。我嘗試了谷歌搜索,並發現「LoadPicture」,但我似乎無法得到那個工作。你有沒有想過這個功能可能是什麼? – Birjolaxew 2011-03-05 07:06:23

+0

我不使用VB6,對不起。它看起來像tile1.Picture = LoadPicture(「PATH」)將做我上面的例子。如果這不起作用,我不知道爲什麼。也許如果你在原帖中發佈了更多的代碼,那麼擁有更多VB6知識的人可能會看到你的問題。我希望我能有更多的幫助。 – 2011-03-05 07:28:32

+0

無論如何謝謝你的幫助。我會自己研究它。同時,我將你的標記作爲答案,因爲它顯然幫助我走了答案。 – Birjolaxew 2011-03-05 21:14:11