seleccionar additem ms-access listbox access-vba

ms-access - additem - listbox.selected vba



MS Access Determine el elemento de cuadro de lista en el que se hizo clic en evento de clic (1)

Tengo un ListBox dentro de MS Access y me gustaría encontrar la mejor manera de obtener el elemento de la lista que fue seleccionado / deseleccionado en el momento del evento de hacer clic.

Es un poco más complicado que recorrer los elementos seleccionados, ya que el cuadro de lista ya está cargado con algunos elementos seleccionados. Estoy tratando de encontrar el único elemento que se vio afectado en el momento del evento al hacer clic.

Entonces, si el usuario hace clic en "Col2-How" en el ejemplo anterior, ¿cómo puedo determinar que se hizo clic en el registro? Alternativamente, si se deselecciona el primer registro, necesitaría saberlo. ¿Alguna pista?

Lo único que se me ocurre es usar un objeto en memoria para mantener una lista de filas resaltadas y hacer un seguimiento de los elementos seleccionados en el momento del clic para determinar los deltas.


podría usar el evento AfterUpdate, por ejemplo, el nombre del listbox es ''aListbox'', así que intente esto:

Private Sub aListBox_AfterUpdate() Dim rowIndex As Integer Dim rowValue As String Dim rowIsSelected As Integer Dim result As String '' ListBox row index clicked rowIndex = Me.aListBox.ListIndex '' Row value clicked rowValue = Me.aListBox.Column(0) '' If row is selected return value is -1, if unselected return value 0 rowIsSelected = Me.aListBox.Selected(rowIndex) If (rowIsSelected = -1) Then result = rowValue & " selected" Else result = rowValue & " unselected" End If MsgBox (result) End Sub