如何定义象ListItems那样的属性
编号:QA002395
建立日期: 2000年1月6日 最后修改日期:2000年1月6日
所属类别:
zenghui:
win98+vb6.0
问:在listview中有一个属性ListItems,当listitems不带index时返回一个对象有add等方法,而使用listitems(index)时返回一个listitem对象,我如何编写像这样的属性。
如:我只能在类中定义一个有同名的属性而不能如此定义
property get listitems() as 对象名
property get listitems(index) as listitem
共存的现象。
两者只能有一?
回答:
其实这样的属性并不是象你想象的那么定义的。首先,利用一个自定义的类模块定义ListItems属性,参考QA000124 "如何为用户控件增加一个用户定义类型的属性"。然后,在ListItems中定义一个函数(假设叫SomeFunc),该函数有一个参数index,返回类型为ListItem类型,然后利用菜单项“工具|过程属性”设置该函数为类模块的默认成员。调用默认成员时可以省略函数名,也就是将ListItems.SomeFunc(index)写成ListItems(index)。看起来,好象一个属性有不同的数据类型。
此问题由李海回答。
| |
|
|
| |
|
|