热情软件屋

 

用vb6.0开发ActiveX控件,如何填加一个数组属性


编号:QA003543
建立日期: 2000年11月15日 最后修改日期:2000年11月15日
所属类别:

hj:
    操作系统: win98
    编程工具: vb6.0
    问题: 用vb6.0开发ActiveX控件,想填加一个属性,它可以输入数组,就象MSChart控件的ChartData属性。能否给出填加属性过程的例子?
    MSDN中"运用属性过程"一节提到,但省略了原码:
    Public Property Let Things(ByVal X As Integer, _
    ByVal Y As Integer, ByVal Thing As Variant)
     '(省略给数组元素赋值的代码。)
    End Property
    Public Property Get Things(ByVal X As Integer, _ByVal Y As Integer) As Variant
     '(省略从数组取值的代码。)
    End Property
    读写根本没有提。
    水平: 中级

回答:

    MSDN中介绍的方式和ChartData属性是不同的。
    如果你象使用MSDN中这样方式,通常你的控件中应该有一个数组来保存用户的设置,例如:
    Dim m_Things(10, 10)
    Public Property Let Things(ByVal X As Integer, _
    ByVal Y As Integer, ByVal Thing As Variant)
     m_Things(X, Y) = Thing
    End Property
    Public Property Get Things(ByVal X As Integer, _ByVal Y As Integer) As Variant
     Things = m_Things(X, Y)
    End Property
    如果你要使用MSChart的ChartData方式,只需要将属性类型声明为Variant就可以了。
    Dim m_ChartData As Variant
    Public Property Get ChartData() As Variant
     ChartData = m_ChartData
    End Property
    Public Property Let ChartData(ByVal data As Variant)
     m_ChartData = data
    End Property
    如果你需要访问m_ChartData中的元素,可以这样:
    Print m_ChartData(0)

此问题由李海回答。

 
把这个问题推荐给朋友
   
   
您的意见类别
您的名字
您的电子邮件
您的建议(请尽可能详细)
 
 

版权所有 1997-2008 热情软件屋
如果您有任何建议和意见, 请给我发个电子邮件 askpro@china-askpro.com
Web Designed by ZebraStudio