简单的VB组合框问题

来源:百度知道 编辑:UC知道 时间:2024/06/15 07:18:53
有两个组合框分别是combo1和combo2在初始化时候combo1中已经有两个项目电视机和冰箱
我想运行时候在combo1中选择一个项目,在combo2中就显示该项目所涵盖的产品
我编写了以下代码在运行的时候总是出错,请大家帮忙看看
Select Case Combo1.ListIndex
Case 0
For i = 0 To Combo2.ListCount - 1
Combo2.RemoveItem i
Next i
Combo2.AddItem "长虹彩电"
Combo2.AddItem "东芝彩电"
Combo2.AddItem "夏普彩电"
Combo2.AddItem "彩虹彩电"
Case 1
For i = 0 To Combo2.ListCount - 1
Combo2.RemoveItem i
Next i
Combo2.AddItem "松下冰箱"
Combo2.AddItem "东芝冰箱"
Combo2.AddItem "夏普冰箱"
Combo2.AddItem "彩虹冰箱"

End Select
程序运行时候当第一次在combo1选中一个项目时候,在combo2中能正确显示出来哪些产品
当第二次在combo1选中项目时,就提示Combo2.RemoveItem i这个语句编译出错

For i = 0 To Combo2.ListCount - 1
Combo2.RemoveItem i
Next i
是有问题的。
例如,你的组合框有7个项目,
删除第1个后剩余6个
删除第2个后剩余5个
删除第3个后剩余4个
删除第4个后剩余3个
此时,在执行删除,就会出错!因为此时i=4,combo2只有第0到第2项 3个了!

你这三行代码无非就是全部删除,何不用combo2.cls呢?