Événement Windows.KeyPress (Visio)
Cet événement se produit lors de la pression d’une touche du clavier.
Syntaxe
expression. KeyPress (KeyAscii, CancelDefault)
Expression Variable qui représente un objet Windows .
Parameters
Nom | Requis/Facultatif | Type de données | Description |
---|---|---|---|
KeyAscii | Obligatoire | Long | Valeur ASCII de la touche sur laquelle vous avez appuyé. Il peut s’agir de n’importe quel code de caractère ASCII. |
CancelDefault | Requis | Boolean | False si Microsoft Visio doit traiter le message reçu à partir de cet événement. True dans tous les autres cas. |
Remarques
Si vous donnez la valeur True à AnnulerDéfaut, Visio ne traite pas le message reçu lorsque vous cliquez sur le bouton de la souris.
Contrairement à d’autres événements Visio, KeyPress n’a pas le préfixe Query, mais il s’agit toujours d’un événement de requête. Autrement dit, vous pouvez annuler le traitement du message envoyé par KeyPress, soit en définissant CancelDefault sur True, soit, si vous utilisez la méthode VisEventProc pour gérer l’événement, en retournant True. Pour plus d'informations, reportez-vous aux rubriques relatives à la méthode VisEventProc et à tous les événements de requête (par exemple, l'événement QueryCancelSuspend) dans la présente référence.
Remarque
Le fait d’appuyer sur une combinaison de touches d’accélérateur, par exemple Ctrl+C, ne déclenche pas l’événement KeyPress .
Si vous utilisez Microsoft Visual Basic ou Visual Basic pour Applications (VBA), la syntaxe de cette rubrique décrit un moyen générique pour gérer efficacement les événements.
Si vous souhaitez créer vos propres objets Event , utilisez la méthode Add ou AddAdvise .
Pour créer un objet Event qui exécute un module complémentaire, utilisez la méthode Add applicable à la collection EventList.
Pour créer un objet Event qui reçoit des notifications, utilisez la méthode AddAdvise.
Pour rechercher le code de l’événement à créer, voir Codes d’événement.
Exemple
Ce module de classe indique comment définir une classe récepteur appelée KeyboardListener à l'écoute des événements déclenchés par des actions de clavier dans la fenêtre active. Il déclare la variable objet vsoWindow à l'aide du mot clé WithEvents. Le module de classe contient également des gestionnaires d'événements pour KeyDown, KeyPress et KeyUp.
Pour exécuter cet exemple, insérez un nouveau module de classe dans votre projet VBA, nommez-le KeyboardListener et insérez le code suivant dans le module.
Dim WithEvents vsoWindow As Visio.Window
Private Sub Class_Initialize()
Set vsoWindow = ActiveWindow
End Sub
Private Sub Class_Terminate()
Set vsoWindow = Nothing
End Sub
Private Sub vsoWindow_KeyDown(ByVal KeyCode As Long, ByVal KeyButtonState As Long, CancelDefault As Boolean)
Debug.Print "KeyCode is "; KeyCode
Debug.Print "KeyButtonState is" ; KeyButtonState
End Sub
Private Sub vsoWindow_KeyPress(ByVal KeyAscii As Long, CancelDefault As Boolean)
Debug.Print "KeyAscii value is "; KeyAscii
End Sub
Private Sub vsoWindow_KeyUp(ByVal KeyCode As Long, ByVal KeyButtonState As Long, CancelDefault As Boolean)
Debug.Print "KeyCode is "; KeyCode
Debug.Print "KeyButtonState is" ; KeyButtonState
End Sub
Ensuite, insérez le code suivant dans le projet ThisDocument .
Dim myKeyboardListener As KeyboardListener
Private Sub Document_DocumentSaved(ByVal doc As IVDocument)
Set myKeyboardListener = New KeyboardListener
End Sub
Private Sub Document_BeforeDocumentClose(ByVal doc As IVDocument)
Set myKeyboardListener = Nothing
End Sub
Enregistrez le document pour initialiser la classe, puis cliquez sur n'importe quelle touche pour déclencher l'événement KeyPress. Dans la fenêtre Exécution, le gestionnaire affiche le code ASCII de la touche sur laquelle vous avez appuyé pour déclencher l'événement.
Assistance et commentaires
Avez-vous des questions ou des commentaires sur Office VBA ou sur cette documentation ? Consultez la rubrique concernant l’assistance pour Office VBA et l’envoi de commentaires afin d’obtenir des instructions pour recevoir une assistance et envoyer vos commentaires.