使用Tab键可跨多个子窗体从一个字段移至另一个

时间:2019-04-02 11:18:56

标签: ms-access access-vba

我有一个unbound mainForm,其中包含9个continuous SubForms。我使用SubForm1作为代理父级,并将mainForm上的一个文本框链接到ID的{​​{1}}。然后将此SubForm1用作其他8个ID的{​​{1}}。这种安排效果很好,并且在跨记录移动以进行数据输入/数据编辑方面确实非常快。但是,当我想使用parentField按钮从一个child subForms移到另一个TAB时遇到了挑战。目前,我必须使用textBox in SubForm1在各个表单之间移动。我知道它是由于多个textBox in 'SubForm2而发生的,但是我想给我的用户一个好像只是一个屏幕的感觉。我的用户希望类似网络的体验只能使用Ctl + Tab按钮在各个控件之间移动。不使用SubForms按钮,有什么方法可以实现?

1 个答案:

答案 0 :(得分:0)

例如,如果您知道何时将出现在子窗体1的最后一条记录上,则可以检查keyDown事件并关注下一个子窗体。

类似这样的东西:

Private Sub last_control_KeyDown(KeyCode As Integer, Shift As Integer)
On Error Resume Next
If Shift  = 0 Then ' this is tab , then go to next subform
subForm2.setFocus
End If
End Sub