KeyboardEvent.KeyButtonState-Eigenschaft (Visio)

Gibt den Zustand von Maustasten und die UMSCHALT- und STRG-TASTE zurück, die einem Tastaturereignis zugeordnet sind. Schreibgeschützt.

Syntax

Ausdruck. KeyButtonState

Ausdruck Eine Variable, die ein KeyboardEvent-Objekt darstellt.

Rückgabewert

Long

HinwBemerkungeneise

Mögliche Werte für KeyButtonState können eine Kombination aus einem der in der folgenden Tabelle aufgeführten Werte sein, die in VisKeyButtonFlags in der Visio-Typbibliothek deklariert sind. Wenn KeyButtonState beispielsweise 9 zurückgibt, gibt 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 VBA-Projekt (Microsoft Visual Basic for Applications) 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 die Klasse zu initialisieren, und drücken Sie dann eine beliebige Taste, um ein KeyDown-Ereignis auszulösen . Im Direktfenster gibt der Handler den Code der Taste aus, die gedrückt wurde, um das Ereignis auszulösen, sowie den Zustand der UMSCHALT- und STRG-Tasten zum Zeitpunkt des Auslösens 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.