You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何实现按回车键时光标从窗体文本框跳转至子窗体文本框

实现回车键跳转至子窗体对应字段的方法

以下以Access窗体场景为例,提供两种可落地的解决方法:

方案一:通过事件代码自定义回车行为

  1. 打开主窗体设计视图,将主窗体的KeyPreview属性设置为是(让主窗体优先捕获键盘事件)
  2. 为主窗体添加KeyDown事件代码:
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
    ' 捕获回车键触发
    If KeyCode = vbKeyReturn Then
        ' 判断当前焦点是否在主窗体的目标触发文本框上
        If Screen.ActiveControl.Name = "主窗体最后一个文本框名称" Then
            ' 跳转至子窗体的指定字段
            Me.子窗体容器控件名.Form.子窗体目标字段名.SetFocus
            ' 取消默认的回车跳转逻辑
            KeyCode = 0
        End If
    End If
End Sub
  • 替换代码中的主窗体最后一个文本框名称为你需要触发跳转的主窗体文本框名
  • 子窗体容器控件名是主窗体上承载子窗体的控件名称(注意不是子窗体本身的名称)
  • 子窗体目标字段名替换为子窗体中要跳转的具体字段名称

方案二:调整Tab顺序实现无代码跳转

如果不想编写代码,可以通过调整Tab键顺序实现:

  • 打开主窗体设计视图,点击菜单栏视图→Tab键顺序
  • 在弹出的窗口中,将主窗体的文本框按需求排序,把子窗体控件的Tab顺序放在主窗体目标文本框的后面
  • 把主窗体所有文本框的EnterKeyBehavior属性设置为否(让回车键模拟Tab键的跳转逻辑)
  • 完成设置后,按回车遍历主窗体文本框到最后一个时,下一次回车会自动跳转到子窗体控件,再按回车即可定位到子窗体的第一个可编辑字段

提示:如果子窗体是数据表视图,跳转后光标会自动定位到第一条记录的第一个可编辑字段;如果是窗体视图,需确保子窗体自身的Tab顺序已正确设置。

内容的提问来源于stack exchange,提问作者Alex Chitiavi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 20:25:25