用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)
此问题由李海回答。
| |
|
|
| |
|
|