代码之家  ›  专栏  ›  技术社区  ›  Przemyslaw Remin

如何在带有箭头键的ActiveX组合框项之间切换

  •  0
  • Przemyslaw Remin  · 技术社区  · 6 年前

    如何在带有箭头键的ActiveX组合框项之间切换?我想实现鼠标悬停在项目上生成的这种行为。这样,当我们按下向下箭头或向上箭头键时,蓝色突出显示将移动。

    enter image description here

    我有一个线索,它应该用coboxname_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 回复  |  直到 6 年前
        1
  •  0
  •   Przemyslaw Remin    6 年前

    操纵 TempCombo.ListIndex 就是答案。举例 up arrow 关键:

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

    使用它需要对列表中的第一项和最后一项进行错误处理。以下是解决问题的提示: https://stackoverflow.com/a/34621918/1903793