Activate 事件在窗体或报表获得焦点并成为活动窗口时发生。
注意 如果窗体是在对话框、弹出式窗体或其他窗体后面获得焦点,则 Activate 事件不会发生。
若要在这些事件发生时执行宏或事件过程,请将 OnActivate 或 OnDeactivate 属性设置为宏的名称或 [事件过程]。
激活窗体或报表的方法有好几种,可以将其打开、对其或它上面的控件进行单击,或通过在 Visual Basic 中使用 SetFocus 方法(只对窗体而言)。
Activate 事件只在窗体或报表可见时才能发生。
Activate 事件发生在 GotFocus 事件之前,Deactivate 事件则发生 LostFocus 事件之后。
在两个开启的窗体之间切换时,切换的窗体将发生 Deactivate 事件,而切换到的窗体发生 Activate 事件。如果这两个窗体中没有包含已启用的可见控件,则第一个窗体在发生 Deactivate 事件之前将发生 LostFocus 事件,而第二个窗体在发生 Activate 事件之后发生 GotFocus 事件。
在首次打开窗体时,下列事件按如下顺序发生:
Open ==> Load ==> Resize ==> Activate ==> Current
当关闭窗体时,下列事件按如下顺序发生:
Unload ==> Deactivate ==> Close
以下示例说明当窗体获得焦点时如何显示名为 CustomToolbar 的自定义工具栏。
Private Sub Form_Activate()
DoCmd.ShowToolbar "CustomToolbar", acToolbarYes
End Sub