KeyboardEvent.KeyButtonState-Eigenschaft (Visio)

Gibt den Status der Maustasten sowie der Tasten UMSCHALT und STRG zurück, die einem Tastaturereignis zugeordnet sind. Schreibgeschützt.

Syntax

Ausdruck. KeyButtonState

Ausdruck Eine Variable, die ein KeyboardEvent-Objekt darstellt.

Rückgabewert

Long

Hinweise

Mögliche Werte für KeyButtonState können eine Kombination der in der folgenden Tabelle gezeigten Werte sein, die in VisKeyButtonFlags in der Visio-Typbibliothek deklariert sind. Wenn KeyButtonState beispielsweise 9 zurückgibt, zeigt dies an, dass der Benutzer beim Drücken von STRG auf die linke Maustaste geklickt hat.

Konstante Wert
visKeyControl 8
visKeyShift 4
visMouseLeft 1
visMouseMiddle 16
visMouseRight 2

Beispiel

Dieses Klassenmodul zeigt, wie eine Empfängerklasse mit der Bezeichnung KeyboardListener definiert wird, die von Tastaturaktionen im aktiven Fenster ausgelöste Ereignisse überwacht. Es deklariert die vsoWindow-Objektvariable unter Verwendung des Schlüsselworts WithEvents. Das Klassenmodul enthält außerdem einen Ereignishandler für die KeyDown-, KeyPress- und KeyUp-Ereignisse.

Fügen Sie zum Ausführen dieses Beispiels ein neues Klassenmodul in Ihr Microsoft Visual Basic for Applications (VBA)-Projekt ein, nennen Sie es KeyboardListener, 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_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

Fügen Sie dann den folgenden Code in das ThisDocument-Projekt ein.

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

Speichern Sie das Dokument, um den Kurs zu initialisieren, und drücken Sie dann eine beliebige Taste, um ein KeyDown-Ereignis auszulösen. Im Direktfenster druckt der Handler den Code der Taste, die zum Auslösen des Ereignisses gedrückt wurde, sowie den Status der Tasten UMSCHALT und STRG zum Zeitpunkt der Auslösung des Ereignisses.

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.