我可以使用CallByName访问类的子值(换句话说,我可以Class.SubValue
使用它)。
但是当我想Class.SUBCLASS.SubValue
使用 CallByName 时出现错误。
是否可以使用 CallByName (或使用 smtg else)来做到这一点?
这是一个典型的代码:
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)?