Detecter si la touche Echap est enfoncée. Permet d'annuler une opération en boucle.
L'exemple suivant necessite juste un bouton pour démarrer la boucle "dans la procedure MySub".
Veuillez noter que la fonction ProcessCmdKey ne necessite aucun appel direct de votre part, elle est executée directement donc vous pouvez l'utiliser partout dans votre programme.
Merci pour vos commentaires.
Source / Exemple :
Public Class Form1
'declarer une variable boolean pour la touche ESC
Public CancelPressed As Boolean = False
'Fonction pour detecter la touche du clavier
Protected Overrides Function ProcessCmdKey(ByRef msg As System.Windows.Forms.Message, ByVal keyData As System.Windows.Forms.Keys) As Boolean
CancelPressed = keyData = Keys.Escape
End Function
'Test
Sub MySub()
Do
'faire les opérations
Me.Text = Now.Second
CancelPressed = False
Application.DoEvents()
If CancelPressed Then
If MsgBox("Abort current operation?", MsgBoxStyle.RetryCancel & MsgBoxStyle.Question) = MsgBoxResult.Yes Then
Exit Do
End If
End If
Loop Until CancelPressed
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
MySub()
End Sub
End Class
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.