【问题标题】:Need to Automatically Edit Access TextBox in SubForm after SetFocusSetFocus后需要在SubForm中自动编辑Access TextBox
【发布时间】:2016-09-02 18:14:19
【问题描述】:

我尝试将 TabControls 用于访问表单中的子表单。

我在 TabControl 的页面上嵌入了一个子表单。我需要从主表单中的最后一个数据输入字段移动到子表单中的第一个数据输入字段。

当我将焦点设置到子窗体中的控件时,它不允许在不单击文本框的情况下进行编辑。是否有立即启用编辑的命令?

Private Sub ReadDate_AfterUpdate()
  Dim myControl As Control
  Set myControl = Forms!Data_Input!BOD_Data_Subform!textBoxToEdit

  myControl.SetFocus
End Sub

提前感谢您的任何建议。

【问题讨论】:

  • 不确定您在问什么?如果他们单击文本框并且可以开始编辑,那么您将如何开始编辑文本框?您是在谈论以编程方式更改文本框内容 - 这不起作用吗?
  • @dbmitch - 当他们点击任一选项卡或输入以提交数据更改时,我希望光标在文本框中闪烁。我刚刚意识到,如果您按两次选项卡(或返回一次和一次选项卡),光标会在 TextBox 内闪烁。
  • 在文本框内闪烁?这就是您所说的“启用编辑”吗?
  • 是的,在文本框内闪烁。

标签: ms-access vba tabcontrol


【解决方案1】:

从主窗体中选择子窗体上的控件需要两个步骤
按顺序执行以下操作:

  • 选择子表单控件。
  • 选择合适的控件 子窗体。

示例代码

Private Sub ReadDate_AfterUpdate()
  Dim myControl As Control

  ' Select the subform control first
  Forms!Data_Input!BOD_Data_Subform.SetFocus
  Doevents

  ' Select the control on the subform.
  Forms!Data_Input!BOD_Data_Subform.Form!textBoxToEdit.SetFocus
End Sub

* 编辑 *

如果主窗体中没有 TabControls,我怀疑答案会起作用。这是一个由两部分组成的过程,但在这种情况下,第一步是:

Forms!Data_Input!subDataTabControl.Pages(0).SetFocus

其中 subDataTabControl 是选项卡控件的名称,0 给出页面索引。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-03-08
    • 1970-01-01
    • 1970-01-01
    • 2018-06-10
    • 1970-01-01
    • 2012-03-21
    • 2017-07-02
    • 2010-10-31
    相关资源
    最近更新 更多