获取列表框中的选定项

rub*_*ent 3 vb6

我是 VB6 的新手。当我按下Modify按钮时,我需要在列表框中获取所选项目以将其内容设置为文本框的文本。

Private Sub Modify_Click()
    List2.List(0) = Text3.Text
End Sub
Run Code Online (Sandbox Code Playgroud)

我需要从列表框中更改所选项目的索引 0。

在 VB.Net 中,我使用了以下语句,但是在 VB6 中,我不知道该怎么做。

val=ListBox2.SelectedItem.Value 
Run Code Online (Sandbox Code Playgroud)

Bon*_*ond 5

ListIndex返回所选项目的从零开始的索引,或者-1如果未选择任何项目。将它与List()集合结合使用以检索所选项目。

例如:

If List2.ListIndex < 0 Then
    Debug.Print "No item selected."
Else
    Debug.Print "Selected text = " & List2.List(List2.ListIndex)
End If
Run Code Online (Sandbox Code Playgroud)

或者,您可以只使用该Text属性。如果未选择任何项目,Text将返回一个空字符串。

Debug.Print List2.Text
Run Code Online (Sandbox Code Playgroud)

如果您ListBox允许进行多项选择,则需要遍历项目并使用该Selected()函数来确定选择了哪些项目:

For i = 0 To List2.ListCount - 1
    If List2.Selected(i) Then Debug.Print List2.List(i)
Next
Run Code Online (Sandbox Code Playgroud)

因此,要回答您的问题,要将所选项目的文本更改为文本框的文本,请使用以下命令:

If List2.ListIndex >= 0 Then
    List2.List(List2.ListIndex) = Text3.Text
End If
Run Code Online (Sandbox Code Playgroud)