编写程序,演示列表框控件的基本操作。在窗体上建立两个列表框,两个命令按钮,如图5.26所示。程序运行后,在第一个列表框中选择所需要的项目,单击“添加”按钮,可把所选择的项目移到第二个列表框中。如果单击“删除”按钮,则执行相反的操作。在第二个列表框中,允许同时选择多个项目。
如图 http://hiphotos.baidu.com/tomorrow%5Fbetter/abpic/item/50159035bef67a1090ef39c0.jpg
本人是个初学者
编写程序如下。可是运行时总是报运行时错误'381'Option Explicit
Dim m, n, i, j As Integer
Dim temp1, temp2 As StringPrivate Sub Command1_Click()
If List1.ListCount = 0 Then
End
Else
For i = 0 To m - 1
 If List1.Selected(i) Then''总是提示这一行有错误,说是索引值超出范围
 temp1 = List1.List(i)
 List1.RemoveItem i
 List2.AddItem temp1
 End If
Next i
End If
End SubPrivate Sub Command2_Click()
If List2.ListCount = 0 Then
End
Else
For j = 0 To List2.ListCount - 1
If List2.Selected(j) Then
List1.AddItem List2.List(j)
List2.RemoveItem j
End If
Next j
End IfEnd SubPrivate Sub Form_Load()
List1.AddItem "日本"
List1.AddItem "美国"
List1.AddItem "法国"
List1.AddItem "英国"
List1.AddItem "德国"
List1.AddItem "马来西亚"
List1.AddItem "中国"
End Sub
Private Sub List1_Click()End Sub///请问该怎么解决这个问题啊??
非常感谢!!!!

解决方案 »

  1.   

    For i = 0 To m - 1
     If List1.Selected(i) Then''总是提示这一行有错误,说是索引值超出范围
     temp1 = List1.List(i)
     List1.RemoveItem i
     List2.AddItem temp1
     End If
    Next i
    改成:For i = 0 To List1.count-1
     If List1.Selected(i) Then''总是提示这一行有错误,说是索引值超出范围
     temp1 = List1.List(i)
     List1.RemoveItem i
     List2.AddItem temp1
     End If
    Next i
      

  2.   

    不好意思List1.count 改成 List1.listcount
      

  3.   

    for i=0 to list1.listcount-1
    if list1.selected(i) then
    list2.additem list1.list(i)
    end if
    for i=0 to list1.listcount-1
    if list1.selected(i) then
    list1.removeitem i
    end if
    ///
    还是不行啊!
      

  4.   

    改成:
    for i=1 to list1.listcount
      

  5.   

    试完了,得改成for i=list1.listcount-1 to 0 step -1
    才行
    倒着数
    正着数不行