(50)在多选的情况下,如何取得列表框里被选中的项目

zebulon 2004-06-29 09:33:12
在多选的情况下,如何取得列表框里被选中的项目
...全文
131 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
rainstormmaster 2004-06-30
  • 打赏
  • 举报
回复
//看来必须采用遍历所有项目的方法了..
不是这样的,看我的代码:

Option Explicit
Private Declare Function SendMessage Lib "user32" _
Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg _
As Long, ByVal wParam As Long, lParam As Any) As Long

Private Const LB_GETSELITEMS = &H191


Private Sub Command1_Click()
Dim ItemIndexes() As Long, x As Long, iNumItems As Long
iNumItems = List1.SelCount
If iNumItems Then
ReDim ItemIndexes(iNumItems - 1)
SendMessage List1.hwnd, LB_GETSELITEMS, iNumItems, ItemIndexes(0)
End If
For x = 0 To iNumItems - 1
Debug.Print "第" + CStr(ItemIndexes(x) + 1) + "个条目被选中"
Debug.Print "相应内容为:" + List1.List(ItemIndexes(x))
Next

End Sub

Private Sub Form_Load()
Dim i As Long
For i = 1 To 100
List1.AddItem "line " + CStr(i)
Next
End Sub
broown 2004-06-30
  • 打赏
  • 举报
回复
Private Sub Command1_Click()
MsgBox List1.ListIndex
End Sub
zebulon 2004-06-29
  • 打赏
  • 举报
回复
看来必须采用遍历所有项目的方法了..

如果是这样, 本人建议在开始加上
if list1.selCount = 0 then exit sub
可以提高效率
ryuginka 2004-06-29
  • 打赏
  • 举报
回复
ok
踏平扶桑 2004-06-29
  • 打赏
  • 举报
回复
Private Sub Form_Load()
Dim i As Integer
For i = 0 To 10
List1.AddItem i
Next
End Sub
需要把list的multiselect设置为1
Private Sub List1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
Dim i As Integer
Dim str As String
For i = 0 To List1.ListCount - 1
If List1.Selected(i) Then str = str & List1.List(i)
Next
Text1.Text = str
End Sub
mmcgzs 2004-06-29
  • 打赏
  • 举报
回复
同意楼上
online 2004-06-29
  • 打赏
  • 举报
回复
Private Sub Command1_Click()
Text1.Text = ""
For i = 0 To List1.ListCount - 1
If List1.Selected(i) Then
'MsgBox "你选择了" & i + 1
If Text1.Text = "" Then
Text1.Text = List1.List(i)
Else
Text1.Text = List1.List(i) + vbCrLf + Text1.Text
End If
End If
Next i
End Sub

Private Sub Form_Load()
Dim i As Integer
'For i = 1 To 10
'List1.AddItem CStr(i)
'Next
List1.AddItem "aaaa"
List1.AddItem "bbbb"
List1.AddItem "cccc"
List1.AddItem "dddd"
End Sub

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧