2013-10-15 53 views
0

我正在爲一門課程編寫POS應用程序。我在訪問另一個類中的ArrayList類型的itemList時遇到問題。下面是我的兩個類的代碼。是否有可能在另一個類中訪問arrayList(即在Transaction之內)?VB arraylist訪問另一個類

Public Class Item 

    'Declares item variables 
    Public itemName As String 
    Public itemPrice As Decimal 
    Public itemQty As Integer 
    Public itemSku As Long 
    Public itemList As New ArrayList 
    Public newItem As Item 


    'Method passes details of item 
    Public Sub AddItem(itemSku, itemName, itemPrice, itemQty) 
     itemSku = newItem.itemSku 
     itemName = newItem.itemName 
     itemPrice = newItem.itemPrice 
     itemQty = newItem.itemQty 
     itemList.Add(newItem) 'adds newItem to arrayList of items itemList 
    End Sub 


End Class 


Public Class Transaction 
    Dim subtotal As Decimal 
    Dim tax As Decimal 
    Dim total As Decimal 
    Dim paymentType As String 

    Public Function calculateBalance() 
     For count As Integer = 0 To itemList.Count 'TRYING TO ACCESS ARRAYLIST HERE 

     Next 
    End Function 
End Class 

回答

2

的問題是,你不說明其itemList應使用Item類的實際實例。更改功能爲:

Public Function calculateBalance(myItem As Item) 
    For count As Integer = 0 To myItem.itemList.Count 'TRYING TO ACCESS ARRAYLIST HERE 

    Next 
End Function 
+0

爲了這個工作,我需要生成一個類型項目的領域? – user2172240

+0

Dim myItem As item – user2172240

+0

是的,你需要在其他地方實例化一個Item對象,然後將它傳遞給函數。或者,如果函數未使用「Item」的其餘部分,則可以將'itemList'傳遞給該函數。這完全取決於你想要用你的程序做什麼。 –