|
早速のご回答ありがとうございます。
プロパティをPublicにして直接SETするしか
方法はないのでしょうか?
最終的にやりたい事は、以下のようなオブジェクトの
動的配列を扱うクラス(Javaで言うArrayListみたいな物)
を作成したいと思っています。
例
=================================================
Option Explicit
Private list() As Variant
-----------------------------
Public Sub init()
ReDim list(0)
End Sub
-----------------------------
Public Sub add(ByRef obj As Variant)
If UBound(list) = 0 Then
list(0) = obj
Else
ReDim Preserve list(UBound(list) + 1)
list(UBound(list)) = obj
End If
End Sub
-----------------------------
Public Function getItem(ByVal num As Integer) As Variant
getItem = list(num)
End Function
-----------------------------
Public Sub setItem(ByVal num As Integer, ByRef obj As Variant)
list(num) = obj
End Sub
-----------------------------
Public Sub insertItem(ByVal num As Integer, ByRef obj As Variant)
Dim i As Integer
ReDim Preserve list(UBound(list) + 1)
For i = UBound(list) To num Step -1
If i = num Then
list(i) = obj
Else
list(i) = list(i - 1)
End If
Next i
End Sub
-----------------------------
Public Sub deleteItem(ByVal num)
Dim i As Integer
For i = num To UBound(list) - 1 Step 1
list(i) = list(num + 1)
Next
ReDim Preserve list(UBound(list) - 1)
End Sub
-----------------------------
Public Function size() As Integer
size = UBound(list)
End Function
====================================================
上記のようなクラスを実現する為に、メソッドの引数で
クラスを渡せるようにしたいのです・・・。
|
|