VB里如何逐行读取listbox中的数据

有5个text文本框,有一个listbox列表框,有一个按钮listbox里有5条数据比如1、2、3、4、5点击按钮后把listbox的第一条数据给text1,第二条给t... 有5个text文本框,有一个listbox列表框,有一个按钮
listbox里有5条数据比如1、2、3、4、5
点击按钮后把listbox的第一条数据给text1,第二条给text2如此类推
展开
 我来答
zdingyun
推荐于2016-06-14 · 知道合伙人软件行家
zdingyun
知道合伙人软件行家
采纳数:15429 获赞数:48168
1982年上海业余工业大学化工系毕业 现退休

向TA提问 私信TA
展开全部

VB可通过循环来获取ListBox控件的List属性。

List属性,返回或设置控件的列表部分的项目。列表是一个字符串数组,数组的每一项都是一列表项目。

下列代码读取ListBox控件的List属性。

Option Explicit
    Dim I As Long

Private Sub Form_Click()
    For I = 1 To 10
        Print List1.List(I) '输出ListBox的前10项内容
    Next
End Sub

Private Sub Form_Load()
    Dim Entry As String  ' 声明变量。
    For I = 1 To 30   ' 计数值从 1 到 30。
        Entry = "Entry " & I   ' 创建输入项。
        List1.AddItem Entry   ' 添加该输入项。
    Next I
End Sub

syx54
2013-08-21 · TA获得超过7376个赞
知道大有可为答主
回答量:6567
采纳率:83%
帮助的人:2648万
展开全部
Private Sub Command1_Click()
Text1.Text = List1.List(0)
Text2.Text = List1.List(1)
Text3.Text = List1.List(2)
Text4.Text = List1.List(3)
Text5.Text = List1.List(4)
End Sub

如果有多个文本框用:

Private Sub Command1_Click()
Dim i As Integer
For i = 0 To Me.Controls.Count - 1
If Left(Me.Controls(i).Name, 4) = "Text" Then
Me.Controls(i).Text = List1.List(CInt(Right(Me.Controls(i).Name, Len(Me.Controls(i).Name) - 4)) - 1)
End If
Next i
End Sub

前提:你的文本框名称必须是默认的,Text1,Text2,Text3,。。。。
当然,用控件数组,就可以大大简化代码。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
clamp92
2013-08-21 · TA获得超过111个赞
知道答主
回答量:110
采纳率:0%
帮助的人:53万
展开全部
您好,建议您把text设置成控件数组

您好,在command_click事件中用for循环就可以实现
Sub command_click()
for i=0 to ubound(listbox)
text(i).text=listbox.list(i)

next i

end
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
别轻易对人说爱
2020-10-19
知道答主
回答量:8
采纳率:0%
帮助的人:1.5万
展开全部
listbox.listcount
listbox.list(i)
数组text
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Excel开发
2013-08-21 · TA获得超过2912个赞
知道大有可为答主
回答量:1989
采纳率:53%
帮助的人:992万
展开全部
for i=0 to 4
print list1.list(i)
next i
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式