Compartir a través de


Activar, Desactivar eventos

El evento Activate se produce cuando un objeto se convierte en la ventana activa. El evento Deactivate se produce cuando un objeto ya no es la ventana activa.

Sintaxis

Objeto Sub privado_Activate( )
Objeto Sub privado_Deactivate( )

El marcador de posición de objeto representa una expresión de objeto que se evalúa como un objeto de la lista Se aplica a .

Comentarios

Un objeto puede activarse mediante el método Show en el código.

El evento Activate solo puede producirse cuando un objeto está visible. Un UserForm cargado con Load no es visible a menos que use el método Show .

Los eventos Activate y Deactivate solo se producen cuando se mueve el foco dentro de una aplicación. Si se mueve el foco desde un objeto o hacia él en otra aplicación, no se desencadenan los eventos.

El evento Deactivate no se produce al descargar un objeto.

Ejemplo

En el código siguiente se usan dos UserForms: UserForm1 y UserForm2. Copie estos procedimientos en el módulo UserForm1 y agregue UserForm2. El subtítulo de UserForm1 se crea en su procedimiento de evento Activate. Cuando el usuario hace clic en el área cliente de UserForm1, se carga UserForm2 y se muestra desencadenando el evento Deactivate de UserForm1, cambiando sus títulos.

' 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

Vea también

Soporte técnico y comentarios

¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.