Événement Application.MouseMove (Visio)
Se produit lorsque la souris est déplacée.
Syntaxe
expression. MouseMove (Button, KeyButtonState, x, y, CancelDefault)
expressionUne variable qui représente un objetApplication.
Paramètres
Nom | Requis/Facultatif | Type de données | Description |
---|---|---|---|
Bouton | Obligatoire | Long | Bouton de la souris sur lequel vous avez appuyé. Les valeurs possibles sont déclarées dans VisKeyButtonFlags. |
KeyButtonState | Obligatoire | Long | État des boutons de la souris et des touches Maj et Ctrl de l’événement. Les valeurs possibles peuvent être une combinaison des valeurs déclarées dans VisKeyButtonFlags. Par exemple, si KeyButtonState renvoie 9, cela indique que l’utilisateur a cliqué sur le bouton gauche de la souris tout en appuyant sur Ctrl. |
x | Obligatoire | Double | Coordonnée X du pointeur. |
y | Obligatoire | Double | Coordonnée Y du pointeur. |
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 affectez à AnnulerDéfaut la valeur True, Visio ne traite pas le message reçu lorsque vous cliquez sur le bouton de la souris.
Contrairement à d’autres événements Visio, MouseMove n’a pas le préfixe Query, mais il s’agit néanmoins d’un événement de requête. Autrement dit, vous pouvez annuler le traitement du message envoyé par MouseMove, 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.
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 MouseListener à l'écoute des événements déclenchés par des actions de souris 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 les événements MouseDown, MouseMove et MouseUp .
Pour exécuter cet exemple, insérez un nouveau module de classe dans votre projet VBA, nommez-le MouseListener 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_MouseDown(ByVal Button As Long, ByVal KeyButtonState As Long, ByVal x As Double, ByVal y As Double, CancelDefault As Boolean)
If Button = 1 Then
Debug.Print "Left mouse button clicked"
ElseIf Button = 2 Then
Debug.Print "Right mouse button clicked"
ElseIf Button = 16 Then
Debug.Print "Center mouse button clicked"
End If
End Sub
Private Sub vsoWindow_MouseMove(ByVal Button As Long, ByVal KeyButtonState As Long, ByVal x As Double, ByVal y As Double, CancelDefault As Boolean)
Debug.Print "x-position is "; x
Debug.Print "y-position is "; y
End Sub
Private Sub vsoWindow_MouseUp(ByVal Button As Long, ByVal KeyButtonState As Long, ByVal x As Double, ByVal y As Double, CancelDefault As Boolean)
If Button = 1 Then
Debug.Print "Left mouse button released"
ElseIf Button = 2 Then
Debug.Print "Right mouse button released"
ElseIf Button = 16 Then
Debug.Print "Center mouse button released"
End If
End Sub
Ensuite, insérez le code suivant dans le projet ThisDocument .
Dim myMouseListener As MouseListener
Private Sub Document_DocumentSaved(ByVal doc As IVDocument)
Set myMouseListener = New MouseListener
End Sub
Private Sub Document_BeforeDocumentClose(ByVal doc As IVDocument)
Set myMouseListener = Nothing
End Sub
Enregistrez le document pour initialiser la classe, puis déplacez rapidement la souris dans la fenêtre active pour déclencher une série d'événements MouseMove. Dans la fenêtre Exécution, le gestionnaire affiche une liste des paires de valeurs des positions x et y, chacune correspondant à la position de la souris lors du déclenchement d'un événement MouseMove.
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.