如何用VB做到把一个listbox里的所有选项移动到另一个listbox

2025-05-13 07:08:05
推荐回答(3个)
回答(1):

ListBox2.Items.Clear()
For i = 0 To ListBox1.Items.Count - 1
    ListBox2.Items.Add(ListBox1.Items(i))
Next

这样就将ListBox1的列表项移动到另一个ListBox2中了

这是利用For循环;提取第一个列表框ListBox1中的所有列表项,再全部加载到另一个listbox2



        

回答(2):

全部从List2移到List1
Dim i As Integer
For i = List2.ListCount - 1 To 0 Step -1'这个循环应该倒计数方式,否则会出界的。
List1.AddItem List2.List(i), 0'添加到索引0处,这样移动后保持秩序一致
List2.RemoveItem i
Next

从List1移动一条到List2
If List1.ListIndex >= 0 Then'首先判断一下是否有选中条目
List2.AddItem List1.Text
List1.RemoveItem List1.ListIndex
End If

回答(3):

程序测试完美,呵呵,若满意请及时采纳,若需要注解请追问
Private Sub Command1_Click()
If List1.ListCount <> 0 And List1.SelCount = 1 Then
List2.AddItem (List1.List(List1.ListIndex))
List1.RemoveItem List1.ListIndex
End If
End Sub

Private Sub Command2_Click()
For i = 0 To List1.ListCount - 1
List2.AddItem (List1.List(i))
Next i
List1.Clear
End Sub

Private Sub Command3_Click()
If List2.ListCount <> 0 And List2.SelCount = 1 Then
List1.AddItem (List2.List(List2.ListIndex))
List2.RemoveItem List2.ListIndex
End If
End Sub

Private Sub Command4_Click()
For i = 0 To List2.ListCount - 1
List1.AddItem (List2.List(i))
Next i
List2.Clear
End Sub

Private Sub Form_Load()
List1.AddItem "1"
List1.AddItem "2"
List1.AddItem "3"
End Sub