VB自定义类来替换collection设置Key和Value值

前端之家收集整理的这篇文章主要介绍了VB自定义类来替换collection设置Key和Value值前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

创建一个类模块,命名为MyCollection
代码如下:

 
 
  1. OptionExplicit
  2. PrivatecolKeyAsNewCollection
  3. PrivatecolValAsNewCollection
  4. PublicPropertyGetCount()AsLong
  5. Count=colKey.Count
  6. EndProperty
  7. PublicPropertyGetRealCol()AsCollection
  8. SetRealCol=colVal
  9. EndProperty
  10. PublicSubAdd(Item,OptionalKey,OptionalBefore,OptionalAfter)
  11. colKey.AddKey,Key,Before,After
  12. colVal.AddItem,After
  13. EndSub
  14. PublicSubRemove(index)
  15. colKey.Removeindex
  16. colVal.Removeindex
  17. EndSub
  18. PublicFunctiongetKey(index)AsString
  19. getKey=colKey.Item(index)
  20. EndFunction



下面我们用一些代码来测试一下collection特性是否保留,并且我们能不能通过索引号获得key
建个窗体,放个按钮

 
 
  1. PrivateSubCommand1_Click()
  2. DimaAsNewMyCollection'创建实例
  3. '加入对象
  4. a.Add"test1","key1"
  5. a.Add"test2","key2"
  6. a.Add"test3","key3"
  7. a.Add"test4","key4"
  8. a.Add"test5","key5"
  9. Debug.Print"用索引号方式获取对象"
  10. Debug.Printa.RealCol(2)
  11. Debug.Print"用key获取对象"
  12. Debug.Printa.RealCol("key3")
  13. Debug.Print"remove对象"
  14. a.Remove"key2"
  15. Debug.Print"foreach访问"
  16. Dimb
  17. ForEachbIna.RealCol
  18. Debug.Printb
  19. Next
  20. Debug.Print"罗列所有key"
  21. DimiAsInteger
  22. Fori=1Toa.Count
  23. Debug.Printa.getKey(i)
  24. Next
  25. Debug.Print"异常测试"
  26. a.Add"asdad","key5"'重复key
  27. a.Remove"key6"'删除不存在的对象
  28. a.getKey8'获取不存在的key
  29. EndSub

猜你在找的VB相关文章