我想这样调用我的Activex Dll:
dim test as ComTest.Test
test.Mytest=7
x=test.Mytest
test.MyTest.PutDat.Data1 = 17
y=test.MyTest.PutDat那我的Activex Dll 该怎么写???

解决方案 »

  1.   

    test.MyTest.PutDat.Data1 = 17
    晕呀。。这句。。你的意思是test对象里的mytest对象属性的putdat对象属性的data1的属性值???
      

  2.   

    呵呵呵呵,就是这个意思!!! ^_^
    本来还有这样的调用的——test.MyTest.PutDat.Put 17,5,32,43
      

  3.   

    那先写一个putdat类,它有一个data1属性
    再写一个mytest类,它的一个属性是putdat类的实例
    再写test类,它有一个属性是mytest类的实例。
    就这样
      

  4.   

    其实我已经可以实现这样了:
    dim test as ComTest.Test
    test.Mytest=7
    x=test.Mytest
    test.MyTest.PutDat.Data1 = 17
    y=test.MyTest.PutDat
    但是我没办法实现这种效果:
    dim test as ComTest.Test
    test(3).Mytest=7
    x=test(2).Mytest
    test(7).MyTest.PutDat.Data1 = 17
    y=test(9).MyTest.PutDat
      

  5.   

    又有新的问题了,如何使调用
    test.MyTest(1)时,下面有PutDat可以用,
    而使用test.MyTest就只能使用GetDat呢???
      

  6.   

    我自己解决了!非常感谢sinom(毛毛.小狮子>>苦学ORACLE)的提示!
      

  7.   

    我也想学习关于activex的东西,能不能也给我发一个示例呢?
    谢谢
    [email protected]
      

  8.   

    其实很简单的,你在类模板Class1里写如下代码:
    Property Let Value(ByVal Index As Variant, ByVal Dat As Variant)
      .......
    End PropertyPublic Property Get Value(ByVal Index As Variant) As Variant
      .......
    End Property
    Public Function CheckDat() As Variant
      .......
    End Function
    编译后就可以如此调用:
    dim mydll as new Class1
    mydll.Value(3)=7
    dat=mydll.Value(5)
    chk=mydll.CheckDat
      

  9.   

    楼主说的好像因该用集合来实现。Private X As New Collection
    X.Add 对象1
    X.Add 对象2
    .......
    使用 Add 方法可以放入任意类型,并非必须是对象类型。添加成员后就可以通过 “X(1).成员的方法或属性”,“X(2).成员的方法或属性”来访问了。不加括号时可以 X.Count 方法来访问集合中成员数目,X.Remove 方法删除集合中的一个对象.....等等。MSDN 里面有例程和资料。
      

  10.   

    我晕死,写程序和做人一样的,简单点嘛……我看这dll要出错。
    test.Mytest=7 ,这说明什么?把 7 赋给test.Mytest?
    test.MyTest.PutDat.Data1 = 17 再这个,和上行一起说明test.Mytest是一个自定义类型属性吗?好象在ActiverX是不行的哦
      

  11.   

    呵呵,很多事情不试试是不知道结果的,test.Mytest=7、test.MyTest.PutDat.Data1 = 17我已经做出来了。    ^_^
      

  12.   

    你那先写一个putdat类,它有一个data1属性再写一个mytest类,它的一个属性是putdat类的实例再写test类,它有一个属性是mytest类的实例。
      

  13.   

    VB中对象可设置默认属性,test.Mytest=7之后,再test.MyTest.PutDat.Data1 = 17是可以的。