Como puedo hacer para que un formulario se cierre después de una inactividad

Quisiera saber como puedo hacer para que un formulario se cierre después de dos minutos de inactividad.

Respuesta
1

Aqui la solucion

https://msdn.microsoft.com/es-es/vba/access-vba/articles/detect-user-idle-time-or-inactivity 

Hola, gracias por contestar, cuando pego el codigo en el modulo esta parte me la pone en rojo  Msg = Msg &; ExpiredMinutes &; " minute(s)!"

Quitar el punto y coma (;)

Msg = Msg & ExpiredMinutes & " minute(s)!"

He puesto el código en el evento al cronometro, 1000 en el intervalo de cronometro y he creado un modulo y he pegado el código. No se bien como ocultar el formulario. ¿Esto es importante para que funcione? ¿Por qué el formulario no se cierra cuando debería cerrarse? Seguramente me falte hacer algo. ¿Me lo podrías explicar tu mejor?

Hice un formulario Form1

En el evento Intervalo lo puse a 10,000 (cada 10 segundos) y en el evento Al Cronometro puse el código del Link de Microsoft. Esto es a nivel de Propiedades del Formulario.

Aquí el código, dentro del evento

Nota: Aquí la Constante IDLEMINUTES la puse = 1 para que lo hiciera cada 1 minuto, independientemente que la revisión del evento Inteval sea cada 10,000 milisegundos.

En seguida pegue el otro código la Sub (IdleTimeDetected), ya que como es una Sub debe de ir en el mismo modulo (Form1)

Hasta aquí solo te mandara un mensaje indicando que el formulario tuvo 1 minuto de inactividad, aquí debes de poner el Docmd. Close, o el código que quieras que haga al cumplirse 1 minuto de inactividad.

algo asi, para que se cierre el formulario

Saludos! Espero poder haberte ayudado.

En todo caso pon un mail y te mando el ejemplo,

U1. México

No he tenido tiempo de probar lo que me has mandado pero te paso el mail que seguro con el ejemplo me será mucha más fácil . muchas gracias. [email protected]

Hola, perfecto lo que he recibido, era lo que buscaba, solo una pregunta más, podría activarse alguna etiqueta o salir un mensaje que no necesite confirmación diciendo que en 30 segundos se cerrara el formulario, por ejemplo. Muchísimas gracias

Si, se ajunto el siguiente código, para que el mensaje aparezca en un TEXTBOX (mensaje)

'Calcula el valor cuando falten 30 segundos para cerrar U1. 30/05/2018
          minus = ((IDLEMINUTES * 60) - 30) / 60

'Mientras no falten 30 segundos el mensaje se borra U1. 30/05/2018
          If ExpiredMinutes < minus Then
               Me.mensaje = ""
          End If

'Si Faltan 30 segundos se pone el mensaje U1. 30/05/2018
         If minus = ExpiredMinutes Then
               Me.mensaje = "El programa se cerrara en 30 segundos"
         
         End If
        

Saludos!

Mande ejemplo por mail.

U1. México

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas