vb6:动态创建对象

时间:2010-11-15 20:28:08

标签: vb6 object

在vb6中,我可以这样做:

set object=new class

其中object是Object,Class是代码中定义的类。

现在,我想动态地做同样的事情,我想做类似的事情:

set object=createobject("class")

但它失败了,因为createobject显然是针对activex注册的类而不是类模块。

2 个答案:

答案 0 :(得分:4)

如果您将有问题的类放在单独的VB6 OCX中,您将能够使用createObject即时创建它们。

答案 1 :(得分:3)

我希望你想要这样做的原因是模仿某种类似界面的功能,否则它可能不是一个理想的解决方案。

无论如何,您可以创建一个方法,根据您提供的字符串返回不同的类。

function myClassCreatingFunction(className)
    select className

        case: "Class1"
             set myClassCreatingFunction = new Class1
             exit function

        ...

    end select
end function