我有一个非常令人沮丧的问题。基本上,我在数据表视图中有一个3-4个subForms的mainForm。在选定记录并将其设置为mainForm上的控件后,从subForm中移除焦点的一般方法是什么?
我尝试过: OnCurrent事件:
Me.Parent.Form.SetFocus
Me.Parent.[Control].SetFocus而且有一半的时间是有效的。但是,当用户通过单击subForm中的某个字段来选择记录时,问题就出现了。则highlighted字段是A) subForm中的字段,B) mainForm中的字段。看起来是随机决定的。
在其他地方设置新焦点之前,如何从subForm中完全取消/移除焦点?
发布于 2015-09-02 17:07:44
那就是将焦点移到父窗体上的控件:
Me.Parent!SomeControl.SetFocus发布于 2015-09-02 23:12:36
对于这个特殊问题的一个解决方法是使subForm中的字段看起来像一个超链接(即.用户可以“点击”它)。
然后创建一个设置正确焦点的OnClick Event,即:
Public Sub [Field]_Click()
On Error GoTo Goto_Err
'some other code
Me.Parent.[Control].SetFocus
Goto_Exit:
Exit Sub
Goto_Err:
MsgBox Error$
Resume Goto_Exit
End Sub这种解决方法并不理想,因为用户必须单击字段本身,而不是简单地通过按向上/向下箭头移动到另一条记录。
https://stackoverflow.com/questions/32347835
复制相似问题