隐藏在ms access 2007中具有焦点的控件

时间:2012-03-01 10:54:45

标签: forms ms-access vba combobox ms-access-2007

我在表格上有一个组合框。单击特定标签应隐藏此组合框。问题是如果组合框有焦点,单击隐藏此组合框的按钮会产生错误。如何解决此运行时错误?

3 个答案:

答案 0 :(得分:2)

移动焦点。如有必要,创建一个非常小的控件来接收焦点。

Me.SomeControlThatIsNotTheCombobox.SetFocus

重新评论

请注意,此标签与控件无关。

Private Sub Label1_Click()
   Me.Text1.SetFocus
   Me.Label1.Visible = False
End Sub

答案 1 :(得分:0)

而不是将焦点设置到任何特定控件,如果表单上的控件发生更改,将来可能会导致维护问题,如果您模拟按Tab键,则焦点将移动到Tab键顺序中的下一个对象。 / p>

SendKeys "{TAB}"
DoEvents
Me.Command4.Visible = False

请注意,必须使用doevents来处理Tab。

答案 2 :(得分:0)

我知道这是一个老帖子,但我最近刚遇到了类似的问题(这篇文章是在前4或5个结果中)。如果您尝试禁用的控件是子窗体中的第一个,请尝试将其选项卡索引设置为1,而不是0.一旦子窗体获得焦点,它的第一个控件也会这样做。我试图在Form_Open事件中设置它,这解决了它。