2

CallByNameを使用してクラスのサブ値にアクセスできます(つまり、取得できますClass.SubValue)。しかし、 CallByName を使用しよ
うとするとエラーが発生します。 CallByName を使用して (または smtg else を使用して) 実行することは可能ですか?Class.SUBCLASS.SubValue

典型的なコードは次のとおりです。

Class Class1
    Public someVariable as Long=123 'now "Class1" has "someVariable" 
End Class
Class Class2
    Public subClass as new Class1   'now "Class2" has a SUBCLASS "Class1" 
End Class

Sub Test()
    Dim c1 as New Class1, c2 as New Class2
        'This works fine, and I can get c1.someVariable. It's OK.
    a=CallByName(c1,"someVariable",CallType.Get)
        'But I get error here... and I can't get c2.subClass.someVariable
    b=CallByName(c2,"subClass.someVariable",CallType.Get)
End Sub

-- 編集: これが実際の質問です。--

ファイルからフォームのコントロールにパラメーターをロードしたいのですが、ファイルではパラメーターは次のように記述されています
<ControlName>.<Property>=<Value> | TextBox1.Text=SomeText | Button2.Left=1234
。使用するとエラーが発生します。
CallByName(MyForm, "<ControlName>.<Property>", CallType.Set, "<Value>")

どうすれば問題を解決できますか (CallByName または smtg else を使用)?

4

2 に答える 2