Incorrect ListIndex when Multiselect Set to 1 or 2
Article ID: 138524
Article Last Modified on 11/3/2003
APPLIES TO
- Microsoft Visual Basic 3.0 Professional Edition
- Microsoft Visual Basic 3.0 Professional Edition
This article was previously published under Q138524
SYMPTOMS
If the Multiselect property of a list box is set to Simple or Extended (1
or 2), the ListIndex property returns 0 for an empty list box or a filled
list box with nothing selected. It should return -1. When the Multiselect
property of a list box is set to 0 (None), the ListIndex correctly returns
-1 under these same conditions.
WORKAROUND
To detect whether the first item in a list box is selected, with
Multiselect set to 1 or 2, test the Selected property as well as the
Listindex property. For example, with multiselect set to 1 or 2, the
following code will give a message box only if the first item in the list
box is selected:
If (List1.Selected(0) = True And List1.ListIndex = 0) Then
MsgBox "First Item Selected"
End If
STATUS
Microsoft has confirmed this to be a bug in Visual Basic Version 3.0 for
Windows. This problem was corrected in Visual Basic Version 4.0.
Additional query words: 3.00 buglist3.00 fixlist4.00
Keywords: KB138524