PDA

Vollständige Version anzeigen : Über let Property Array setzen


p-flash
28.05.2008, 13:38
Hi,

ich habe folgende Klasse:




private p_tempData() as String


Public Property Get tempData() As String()
tempData = p_tempData
End Property

Public Property Let tempData(data() As String)
p_tempData = data
End Property



Wenn ich jetzt folgendes versuche, führt es zu einem Fehler:
Dim data(1) as String
data(0) = "A"
data(1) = "B"

'Wert setzen
obj.tempData = data

'Wert zurückgeben
tmp = obj.tempData

Wie muss es richtig heißen?

Bin dankbar für jeden Tip

p-flash

Hotte
28.05.2008, 17:20
Hi,

versuch es mal so:

Private p_tempData As Variant


Public Property Get tempData() As Variant
tempData = p_tempData
End Property

Public Property Let tempData(data As Variant)
p_tempData = data
End Property

Und dann in der Prozedur:

Dim i As Long, wert As String

Dim data(2) As Variant
Dim tmp As Variant

data(0) = "A"
data(1) = "B"

'Wert setzen
obj.tempData = data

'Wert zurückgeben
tmp = obj.tempData


For i = 0 To (UBound(tmp) - 1)
wert = wert & tmp(i) & ";"
Next

MsgBox wert


Nur mal so als Beispiel.....

p-flash
30.05.2008, 08:50
Ja, das sieht ganz gut aus. Habe das Problem bereits mit einem Collection-Objekt gelöst. Werde deine Lösung bei nächster Gelegenheit mal testen.

Danke...

p-flash