如何在运行时获取VB6中的Object类型(作为字符串的名称就足够了)?
即:像:
If Typeof(foobar) = "CommandButton" Then ...
Run Code Online (Sandbox Code Playgroud)
/编辑:澄清一下,我需要检查动态类型对象.一个例子:
Dim y As Object
Set y = CreateObject("SomeType")
Debug.Print( <The type name of> y)
Run Code Online (Sandbox Code Playgroud)
输出将是"CommandButton"
我认为你要找的是TypeName而不是TypeOf.
If TypeName(foobar) = "CommandButton" Then
DoSomething
End If
Run Code Online (Sandbox Code Playgroud)
编辑:你是什么意思动态对象?你的意思是用CreateObject("")创建的对象,因为它仍然可以工作.
编辑:
Private Sub Command1_Click()
Dim oObject As Object
Set oObject = CreateObject("Scripting.FileSystemObject")
Debug.Print "Object Type: " & TypeName(oObject)
End Sub
Run Code Online (Sandbox Code Playgroud)
输出
Object Type: FileSystemObject