几天来我一直在寻找这个问题的答案。我的主表单"frmAddContact“有一个名为"NavigationSubform”的导航子表单。所有文本字段都通过在按钮下面放置一个按钮并更改按钮OnGotFocus和OnLostFocus事件的可见性而具有发光效果。当我在主形态上移动的时候,当我移动到子形态的时候,所有的工作都很好,但是当我从子形态移到主形态时,问题就发生了--聚焦于子形态,所以在子形态和主形态上都可以看到辉光。
在主窗体中选择文本框时,如何删除焦点?
每个文本框都有以下代码:
Private Sub [TextBoxName]_GotFocus()
Glow Me.[TextBoxName], Me.[ButtonName], True
End Sub
Private Sub [TextBoxName]_LostFocus()
Glow Me.[TextBoxName], Me.[ButtonName], False
End Sub辉光方法代码位于模块中:
Sub Glow(ctlText As Control, ctlShadow As Control, TurnOn As Boolean)
If TurnOn = True Then
ctlText.BorderColor = RGB(102, 175, 233)
ctlShadow.Visible = True
Else
ctlText.BorderColor = RGB(228, 228, 228)
ctlShadow.Visible = False
End If
End Sub两个带有辉光这里的文本框
发布于 2016-09-12 15:33:41
我认为问题是子形式本身并没有真正失去焦点。您应该能够通过运行主窗体的Textbox GotFocus事件中的辉光代码来强制删除辉光。
这有点棘手,但是请查看许多关于从表单引用子表单的在线资源。
从这是一个很好的开始
规则是,您必须首先引用主窗体,然后是子窗体,然后是控件。
如果您这样做,当文本框获得焦点,它应该清除子窗体控件的辉光
Private Sub [TextBoxName]_GotFocus()
Glow Forms![frmAddContact]![NavigationSubform].Form.[TextBoxName], _
Forms![frmAddContact]![NavigationSubform].Form.[ButtonName], False
Glow Me.[TextBoxName], Me.[ButtonName], True
End Subhttps://stackoverflow.com/questions/39453656
复制相似问题