Selected 属性

expandtri全部显示

使用 Visual Basic 中的 Selected 属性可以确定列表框中的项目是否已选定。Long 型,可读写。

expression.Selected(lRow)

expression     必需。返回“应用于”列表中的一个对象的表达式。

lRow      必需,Long 型。列表框中的项目。第一项用零 (0) 表示,第二项用一 (1) 表示,依此类推。

说明

Selected 属性是一个从零开始的数组,该数组包含了列表框中每个项目的选择状态。

设置

说明

True

选定列表框项目。

False

未选定列表框项目。

 

注释  使用 Visual Basic 可以获得或设置 Selected 属性。

该属性只在程序运行时可用。

当列表框控件的 MultiSelect 属性设为“无”时,只有一个项目的 Selected 属性能够设为 True。当列表框控件的 MultiSelect 属性设为“简单”或“展开的”时,任何项目的 Selected 属性都可以设为 True。一个与字段绑定的多重选择列表框将有一个始终等于 NullValue 属性。可以使用 Selected 属性或 ItemsSelected 集合来检索关于项目选择情况的信息。

在 Visual Basic 中使用 Selected 属性,可以从列表框中选择项目。例如,下面的表达式将选择列表中的第五项。

Me!Listbox.Selected(4) = True

示例

下面的示例使用 Selected 属性将所选项目从 lstSource 列表框移到 lstDestination 列表框。其中 lstDestination 列表框的“行来源类型”属性设置为“值列表”,控件的“行来源”属性由在 lstSource 控件中选定的所有项目决定。lstSource 列表框的“多重选择”属性设置为“展开的”。CopySelected () 过程由 cmdCopyItem 命令按钮调用。

Private Sub cmdCopyItem_Click()

    CopySelected Me

End Sub

Public Sub CopySelected(ByRef frm As Form)

    Dim ctlSource As Control

    Dim ctlDest As Control

    Dim strItems As String

    Dim intCurrentRow As Integer

    Set ctlSource = frm!lstSource

    Set ctlDest = frm!lstDestination

    For intCurrentRow = 0 To ctlSource.ListCount - 1

        If ctlSource.Selected(intCurrentRow) Then

            strItems = strItems & ctlSource.Column(0, _

                 intCurrentRow) & ";"

        End If

    Next intCurrentRow

    ' Reset destination control's RowSource property.

    ctlDest.RowSource = ""

    ctlDest.RowSource = strItems

    Set ctlSource = Nothing

    Set ctlDest = Nothing

End Sub