Cette classe permet de récupérer à la demande le temps depuis lequel l'utilisateur est inactif, ou de récupérer les évènements d'entrée / sortie en activité ainsi que d'agir au bout d'un seuil maximum prédéfini
Source / Exemple :
'exemple d'utilisation
Option Strict On
Option Explicit On
Public Class Form1
Private WithEvents IdleWatch As clsAfIdleInfos
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
IdleWatch = New clsAfIdleInfos(10000, clsAfIdleInfos.WatchingFrenquencyConstants.Fast) '10 secondes max
End Sub
Private Sub IdleWatch_IdleTick(ByVal ElapsedTime As Long) Handles IdleWatch.IdleTick
'une seconde de plus sans activité clavier ou souris
Label1.Text = String.Format("Utilisateur sans activité depuis {0} seconde(s)", ElapsedTime)
End Sub
Private Sub IdleWatch_CameBack() Handles IdleWatch.CameBack
Label1.Text = "Activité détectée"
End Sub
Private Sub IdleWatch_IdleExpired() Handles IdleWatch.IdleExpired
Label1.Text = "Fin de l'observation"
MessageBox.Show(String.Format("Le délai maximum de {0} ms vient d'être atteint : [{1}]." & _
"{2}Le compteur repart à ZERO, au dev d'arrêter ou non " & _
"l'observation par 'IdleWatch.ExpirationLaps = 0'{2}" & _
"et de fermer ou non son application.", IdleWatch.ExpirationLaps, IdleWatch.GetIdleTimeSpan, Environment.NewLine))
IdleWatch.Dispose()
IdleWatch = Nothing
End Sub
End Class
Conclusion :
Classe faite suite à une discussion sur VbFrance :
http://www.vbfrance.com/code.aspx?ID=51547
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.