激活、停用事件

当对象成为活动窗口时,将发生 Activate 事件。 当对象不再是活动窗口时,将发生 Deactivate 事件。

语法

Private Sub对象_Activate ( )
Private Sub对象_Deactivate ( )

对象占位符表示一个对象表达式,该表达式的计算结果为“应用于”列表中的对象。

备注

对象可以通过在代码中使用 Show 方法变为活动状态。

仅当对象可见时, 才会发生 Activate 事件。 使用 Load 加载的 UserForm 不可见,除非使用 Show 方法。

仅当在应用程序中移动焦点时,才会发生“激活”和“停用”事件。 将焦点移至另一个应用程序的对象中或从中移出焦点不会触发任何事件。

卸载对象时不会发生 Deactivate 事件。

示例

以下代码使用两个 UserForms :UserForm1 和 UserForm2。 将这些过程复制到 UserForm1 模块,然后添加 UserForm2。 UserForm1 的描述文字在其 Activate 事件过程中创建。 当用户单击 UserForm1 的工作区时,将加载 UserForm2 并显示触发 UserForm1 的 停用 事件,更改其标题。

' Activate event for UserForm1
Private Sub UserForm_Activate()
    UserForm1.Caption = "Click my client area"
End Sub

' Click event for UserForm1
Private Sub UserForm_Click()
    Load UserForm2
    UserForm2.StartUpPosition = 3
    UserForm2.Show
End Sub

' Deactivate event for UserForm1
Private Sub UserForm_Deactivate()
    UserForm1.Caption = "I just lost the focus!"
    UserForm2.Caption = "Focus just left UserForm1 and came to me"
End Sub

另请参阅

支持和反馈

有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。