vb 如何用代码修改combobox下拉列表
vb中如何用代码直接赋给combobox下拉列表里的各个选项?比如combox1里原来选项是:动物-植物-石头-水我想通过代码修改combox1的选线为:天空-海洋-大地...
vb中如何用代码直接赋给combobox下拉列表里的各个选项?
比如combox1里原来选项是:动物-植物-石头-水
我想通过代码修改combox1的选线为:天空-海洋-大地
自己摸索了combox1.list=“天空” & “海洋” & “大地”不行,怎么写?
一个一个添加我也会,不过太麻烦了,希望有可以有同时添加很多项的写法 展开
比如combox1里原来选项是:动物-植物-石头-水
我想通过代码修改combox1的选线为:天空-海洋-大地
自己摸索了combox1.list=“天空” & “海洋” & “大地”不行,怎么写?
一个一个添加我也会,不过太麻烦了,希望有可以有同时添加很多项的写法 展开
4个回答
展开全部
用代码修改ComboBox中列表项,动态修改列表框中显示项目的实现方法如下:
(1)在Form1上布置控件,如下图所示
将Combo1的Style属性修改为:2 - DropDownList
(2)Form1代码
Option Explicit
' 自定义类型:列表框中显示的项目
Private Type ItemType
Name As String '名称
Category As Integer '类别编码
End Type
'------------------------------------------------------
' BuildComboItems
' BuildComboItems子程序动态修改列表框要显示的内容
' Items() As ItemType 是要显示内容数组
'------------------------------------------------------
Private Sub BuildComboItems(Items() As ItemType)
Dim i As Integer
With Combo1
' 清空Combo1原来的内容
.Clear
' 将内容数组Items各项添加到Combo1
For i = LBound(Items) To UBound(Items)
'在Combo1中显示“名称”
.AddItem Items(i).Name
'项目数据为改项目的类别编码
.ItemData(.NewIndex) = Items(i).Category
Next
If .ListCount > 0 Then
'默认选择第一项
.ListIndex = 0
End If
End With
End Sub
Private Sub Combo1_Click()
'单击Combo1后,Label1显示用户的选择结果
Dim description As String
With Combo1
description = "品名:" + .Text + " 类别:" + CStr(.ItemData(.ListIndex))
End With
Label1.Caption = description
End Sub
Private Sub Command1_Click()
' 创建“水果类”项目数组
Dim Fruits(1 To 4) As ItemType
Fruits(1).Name = "苹果"
Fruits(1).Category = 1
Fruits(2).Name = "橘子"
Fruits(2).Category = 2
Fruits(3).Name = "香蕉"
Fruits(3).Category = 3
Fruits(4).Name = "草莓"
Fruits(4).Category = 4
' 在Combo1中动态添加水果类项目
BuildComboItems Fruits
End Sub
Private Sub Command2_Click()
' 创建“主食类”项目数组
Dim Food(1 To 4) As ItemType
Food(1).Name = "米饭"
Food(1).Category = 10
Food(2).Name = "面条"
Food(2).Category = 11
Food(3).Name = "饺子"
Food(3).Category = 12
Food(4).Name = "包子"
Food(4).Category = 13
' 在Combo1中动态添加“主食类”项目
BuildComboItems Food
End Sub
Private Sub Form_Load()
Command1.Caption = "水果类"
Command2.Caption = "主食类"
Label1.Caption = ""
Combo1.Clear
End Sub
(3)运行效果
启动时
单击“水果类”命令按钮后
单击“主食类”命令按钮后
展开全部
定义一个数组变量 ,然后给combobox
Dim a() As String = {"天空", "海洋", "大地", "地球"}
ComboBox1.DataSource = a
Dim a() As String = {"天空", "海洋", "大地", "地球"}
ComboBox1.DataSource = a
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
没有同时添加很多项的写法
Combo1.Clear
Combo1.AddItem "天空"
Combo1.AddItem "海洋"
Combo1.AddItem "大地"
Combo1.ListIndex=0 '(这句可加可不加、作用自己试)
Combo1.Clear
Combo1.AddItem "天空"
Combo1.AddItem "海洋"
Combo1.AddItem "大地"
Combo1.ListIndex=0 '(这句可加可不加、作用自己试)
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Form1.Combo1.Text= ""
Form1.Combo1.AddItem "天空"
Form1.Combo1.AddItem "海洋"
Form1.Combo1.AddItem "大地"
Form1.Combo1.AddItem "天空"
Form1.Combo1.AddItem "海洋"
Form1.Combo1.AddItem "大地"
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询