主题:listBox问题(祥细描述)
在文本框中输入一个姓氏,单击“删除”按钮,则可删除List1中所有该姓氏的项目。若编写以下程序来实现此功能:
Private Sub Command1_Click()
dim n%,k%
n=len(Text1.Text)
For k=0 To List1.ListCount-1
If Left(List1.List(k),n)=Text1.Text Then
List1.RemoveItem k
End if
Next
End Sub
在调试时发现,如果输入“陈”,可以正确删除所有姓“陈”的项目,但输入“刘”,则只删除了“刘邦”,“刘备”2项,如图所示。
把For k=0 To List1.ListCount-1 改为
For k=List1.ListCount-1 to 0 Step-1
就能解决这个问题,这是为什么?
Private Sub Command1_Click()
dim n%,k%
n=len(Text1.Text)
For k=0 To List1.ListCount-1
If Left(List1.List(k),n)=Text1.Text Then
List1.RemoveItem k
End if
Next
End Sub
在调试时发现,如果输入“陈”,可以正确删除所有姓“陈”的项目,但输入“刘”,则只删除了“刘邦”,“刘备”2项,如图所示。
把For k=0 To List1.ListCount-1 改为
For k=List1.ListCount-1 to 0 Step-1
就能解决这个问题,这是为什么?