domingo, 22 de abril de 2012

Invalidar la X del UserForm

Alguna vez nos hemos preguntado como podría impedir que el usuario pulse el botón de cerrar el formulario.
Para eliminar el botón de cerrar de una barra de titulo de un UserForm, se necesita complejas funciones API como las que vimos en el post anterior. Una solución mucho mas sencilla consiste en interceptar todos los intentos de cerrar el UserForm por medio de un procedimiento de eventos “UserForm_QueryClose” en el modulo de código del UserForm.

El siguiente ejemplo impide al usuario cerrar el formulario pulsando el botón de Cerrar:

Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
    If CloseMode = vbFormControlMenu Then
        Cancel = True
    End If
End Sub

Cuando se intenta cerrar el formulario, utilizamos el procedimiento de evento QueryClose para establecer la propiedad Cancel a True, deteniendo el proceso de cierre.

No hay comentarios:

Publicar un comentario

Nota: solo los miembros de este blog pueden publicar comentarios.