通过键盘箭头导航组合框列表

Navigating combo box list by keyboard arrows

提问人:HAMID ALGHURABI 提问时间:10/7/2023 最后编辑:GustavHAMID ALGHURABI 更新时间:10/7/2023 访问量:47

问:

我有一个组合框,当您输入时会显示选项列表,但是当我尝试使用键盘箭头键浏览列表时,它会选择第一个选项并删除其他选项。我可以选择其他选项的唯一方法是使用鼠标。我希望用户能够使用键盘箭头键导航选项。

这是我的组合框(cboSubject)代码:

Private Sub cboSubject_Change()

Dim strFilter As String

strFilter = Me.cboSubject.Text
Me.cboSubject.RowSource = _
    "SELECT tblSubjects.Subject, tblSubjects.Stage, tblSubjects.Semester, tblSubjects.SubjectID " & _
    "FROM tblSubjects " & _
    "WHERE (((tblSubjects.Stage) Like [screen].[ActiveForm].[cboStage] & '*') " & _
    "AND ((tblSubjects.Subject) Like '*" & strFilter & "*')) " & _
    "ORDER BY tblSubjects.Stage, tblSubjects.Semester, tblSubjects.SubjectID;"
Me.cboSubject.Dropdown

End Sub
VBA MS-Access 组合框 箭头键

评论


答:

1赞 HAMID ALGHURABI 10/7/2023 #1

我设法通过将事件从更改更改为按键来解决问题。每次组合框中的文本发生更改时,都会触发更改事件。这包括使用键盘箭头键浏览列表时。一旦我使用了按键事件,问题就消失了。