Как переключаться между элементами ActiveX Combobox с помощью клавиш со стрелками - PullRequest
0 голосов
/ 22 января 2019

Как переключаться между элементами ActiveX Combobox с помощью клавиш со стрелками? Я хотел бы добиться такого поведения, генерируемого при наведении мыши на элемент. Так что синяя подсветка перемещается, когда мы нажимаем стрелку вниз или клавишу со стрелкой вверх.

enter image description here

У меня есть подсказка, что это должно быть сделано с событием CoboboxName_KeyDown.

Private Sub TempCombo_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
    Select Case KeyCode
        Case 38 'up
        Case 40 'down
    End Select
End Sub

1 Ответ

0 голосов
/ 23 января 2019

Манипулирование TempCombo.ListIndex - это ответ. Пример для up arrow ключа:

Case 38  'Up
TempCombo.ListIndex = TempCombo.ListIndex - 1
Me.TempCombo.DropDown

Использование этого требует обработки ошибок для первого и последнего элемента в списке. Вот подсказка для решения проблемы: https://stackoverflow.com/a/34621918/1903793

...