Поделиться через


Свойство MouseEvent.KeyButtonState (Visio)

Возвращает состояние кнопок мыши и клавиш SHIFT и CTRL, связанных с событием мыши. Только для чтения.

Синтаксис

выражение. KeyButtonState

Выражение Переменная, представляющая объект MouseEvent .

Возвращаемое значение

Длинное целое

Замечания

Возможные значения для KeyButtonState могут быть сочетанием любых значений, показанных в следующей таблице, которые объявлены в VisKeyButtonFlags в библиотеке типов Visio. Например, если KeyButtonState возвращает значение 9, это означает, что пользователь нажал левую кнопку мыши при нажатии клавиши CTRL.

Константа Значение
visKeyControl 8
visKeyShift 4
visMouseLeft 1
visMouseMiddle 16
visMouseRight 2

Пример

В этом модуле класса показано, как определить класс приемника с именем MouseListener , который прослушивает события, вызванные действиями мыши в активном окне. Объектная переменная vsoWindow объявляется с помощью ключевого слова WithEvents . Модуль класса также содержит обработчик событий для события MouseDown , который выводит в окно Интерпретация состояние кнопок мыши и клавиш CTRL и SHIFT при срабатывании события.

Чтобы выполнить этот пример, вставьте новый модуль класса в проект VBA, присвойте ему имя MouseListener и вставьте следующий код в модуль.

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) 
 
 Debug.Print "KeyButtonState is"; KeyButtonState 
 
End Sub

Затем вставьте следующий код в проект 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

Сохраните документ, чтобы инициализировать класс, а затем щелкните в любом месте активного окна (при необходимости, нажав клавиши SHIFT и /или CTRL), чтобы запустить событие MouseDown . В окне Интерпретация обработчик выводит имя кнопки мыши, которая была нажата для запуска события. Если вы нажали обе клавиши или обе клавиши, также будет выведено имя клавиши или клавиш, которые вы нажали.

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.