Application.MouseDown-Ereignis (Visio)
Tritt ein, wenn mit einer Maustaste geklickt wird.
Syntax
Ausdruck. MouseDown (Button, KeyButtonState, x, y, CancelDefault)
expression Eine Variable, die ein Application-Objekt darstellt.
Parameter
Name | Erforderlich/Optional | Datentyp | Beschreibung |
---|---|---|---|
Button | Erforderlich | Long | Die Maustaste, die gedrückt wurde. Mögliche Werte werden in VisKeyButtonFlags deklariert. |
KeyButtonState | Erforderlich | Long | Der Zustand der Maustasten und der UMSCHALT- und STRG-TASTEN für das Ereignis. Mögliche Werte können eine Kombination der in VisKeyButtonFlags deklarierten Werte sein. Wenn KeyButtonState beispielsweise 9 zurückgibt, gibt dies an, dass der Benutzer beim Drücken von STRG auf die linke Maustaste geklickt hat. |
x | Erforderlich | Double | Die X-Koordinate des Mauszeigers. |
y | Erforderlich | Double | Die Y-Koordinate des Mauszeigers. |
CancelDefault | Erforderlich | Boolean | False, wenn die Meldung von Microsoft Visio verarbeitet werden soll, die das Programm von diesem Ereignis empfängt, andernfalls True. |
Hinweise
Wenn Sie CancelDefault auf True festlegen, wird die empfangene Meldung beim Klicken mit der Maustaste nicht von Visio verarbeitet.
Im Gegensatz zu einigen anderen Visio-Ereignissen verfügt MouseDown nicht über das Präfix Query, ist aber dennoch ein Abfrageereignis. Das heißt, Sie können die Verarbeitung der von MouseDown gesendeten Nachricht abbrechen, indem Sie CancelDefault auf True festlegen oder, wenn Sie die VisEventProc-Methode zum Behandeln des Ereignisses verwenden, true zurückgeben. Weitere Informationen finden Sie in den Themen zur VisEventProc-Methode und zu den Abfrageereignissen (z. B. dem QueryCancelSuspend-Ereignis) in dieser Referenz.
Wenn Sie Microsoft Visual Basic oder Visual Basic für Applikationen (VBA) verwenden, beschreibt die Syntax in diesem Thema eine gängige und effiziente Methode zum Verarbeiten von Ereignissen.
Wenn Sie eigene Event-Objekte erstellen möchten, verwenden Sie die Add- oder AddAdvise-Methode .
Verwenden Sie zum Erstellen eines Event-Objekts, das ein Add-On ausführt, die Add-Methode der EventList-Auflistung.
Verwenden Sie zum Erstellen eines Event-Objekts, das eine Benachrichtigung empfängt, die AddAdvise-Methode.
Informationen zum Suchen eines Ereigniscodes für das Ereignis, das Sie erstellen möchten, finden Sie unter Ereigniscodes.
Beispiel
Dieses Klassenmodul zeigt, wie Sie eine Synchronisierungsklasse namens MouseListener definieren, die auf Ereignisse lauscht, die von Mausaktionen im aktiven Fenster ausgelöst werden. Es deklariert die vsoWindow-Objektvariable unter Verwendung des Schlüsselworts WithEvents. Das Klassenmodul enthält auch Ereignishandler für die MouseDown-, MouseMove- und MouseUp-Ereignisse .
Fügen Sie zum Ausführen dieses Beispiels ein neues Klassenmodul in Ihr VBA-Projekt ein, nennen Sie es MouseListener, und fügen Sie den folgenden Code in das Modul ein.
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
Fügen Sie dann den folgenden Code in das ThisDocument-Projekt ein.
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
Speichern Sie das Dokument, um die Klasse zu initialisieren, und klicken Sie dann auf eine beliebige Stelle im aktiven Fenster, um ein MouseDown-Ereignis auszulösen . Im benachbarten Fenster wird durch den Handler der Name der zum Auslösen des Ereignisses betätigten Maustaste angezeigt.
Support und Feedback
Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.