关于VB中的combo控件

其实就是一个比较简单的问题。如何卸载combo中的一个菜单项目(比如说combo中有“1”,“2”,“3”这3个选项,怎么才能去掉其中的“2”这个选项??希望可以提供代码... 其实就是一个比较简单的问题。如何卸载combo中的一个菜单项目(比如说combo中有“1”,“2”,“3”这3个选项,怎么才能去掉其中的“2”这个选项??希望可以提供代码
楼下的,请问那个“1”是什么意思哦?,如果是项目所在位置的话,那问一下如果不知道要删的项目在哪里,只知道要删的项目的名字那怎么办?
展开
 我来答
swx1995
推荐于2016-08-11 · TA获得超过2696个赞
知道大有可为答主
回答量:1477
采纳率:0%
帮助的人:2361万
展开全部
Combo1.RemoveItem X(0 <= X <= ItemCount-1)

如果是名字你可以写一个循环,以下是我的例子

Private Sub Form_Load()
Combo1.AddItem "aa"
Combo1.AddItem "aa"
Combo1.AddItem "v"
Combo1.AddItem "cccdcs"
RemoveItem Combo1, "aa", True '只将显示v和ccdcs。两个aa都被移除。
End Sub

Function RemoveItem(Combo As ComboBox, RemoveName As String, RemoveAll As Boolean) As Integer
Dim i As Integer
For i = Combo.ListCount - 1 To 0 Step -1 '倒着来
If Combo.List(i) = RemoveName Then '如果名字符合
Combo.RemoveItem (i) '删除它
RemoveItem = RemoveItem + 1 '移除项目计数器+1

If RemoveAll = False Then Exit Function '如果不用移除所有的就可以退出函数了
End If
Next
End Function

函数说明:参数1是ComboBox的名字,参数2是移出项目的名字,参数3是一个布尔型,True=移除全部,False=只移除第一个;返回值是移除了多少个。很方便吧。

你自己写函数要注意一点就是For循环一定要从后向前,因为你是移除项目,所以每移除一个,后面的Index都会上移,这样的处理代码麻烦,还不如倒着来。
提示:任何的移除项目都是从后向前比较好。
匿名用户
2009-08-08
展开全部
Combo1.RemoveItem 1 '1表示删除项的位置,0 对应第一项

Dim i As Integer
Dim s As String

s = "2"

For i = 0 To Combo1.ListCount - 1
If Combo1.List(i) = s Then
Combo1.RemoveItem i
Exit For
End If
Next i
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ballsky
2009-08-08 · TA获得超过210个赞
知道小有建树答主
回答量:274
采纳率:0%
帮助的人:247万
展开全部
Private Sub Command1_Click()
Combo1.RemoveItem 1 '删除第二项
End Sub

Private Sub Form_Load()
Combo1.AddItem "1"
Combo1.AddItem "2"
Combo1.AddItem "3"
End Sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式