Événement Windows.MouseMove (Visio)

Se produit lorsque la souris est déplacée.

Syntaxe

expression. MouseMove (Button, KeyButtonState, x, y, CancelDefault)

Expression Variable qui représente un objet Windows .

Parameters

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.