Compartir por


Propiedad MouseEvent.KeyButtonState (Visio)

Devuelve el estado de los botones del mouse y las teclas MAYÚS y CTRL asociadas a un evento del mouse. Solo lectura.

Sintaxis

expresión. KeyButtonState

Expresión Variable que representa un objeto MouseEvent .

Valor devuelto

Long

Comentarios

Los valores posibles de KeyButtonState pueden ser una combinación de cualquiera de los valores que se muestran en la tabla siguiente, que se declaran en VisKeyButtonFlags en la biblioteca de tipos de Visio. Por ejemplo, si KeyButtonState devuelve 9, indica que el usuario ha hecho clic en el botón izquierdo del mouse mientras presiona CTRL.

Constante Valor
visKeyControl 8
visKeyShift 4
visMouseLeft 1
visMouseMiddle 16
visMouseRight 2

Ejemplo:

Este módulo de clase muestra cómo definir una clase de receptor denominada MouseListener que escucha eventos desencadenados por acciones del mouse en la ventana activa. Declara la variable de objeto vsoWindow mediante la palabra clave WithEvents. El módulo de clase también contiene un controlador de eventos para el evento MouseDown que imprime en la ventana Inmediato el estado de los botones del mouse y las teclas CTRL y MAYÚS cuando se desencadena el evento.

Para ejecutar este ejemplo, inserte un nuevo módulo de clase en el proyecto de VBA, asígnele el nombre MouseListener e inserte el código siguiente en el módulo.

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

A continuación, inserte el código siguiente en el proyecto 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

Guarde el documento para inicializar la clase y, a continuación, haga clic en cualquier lugar de la ventana activa (opcionalmente, mientras presiona MAYÚS o CTRL) para desencadenar un evento MouseDown . En la ventana Inmediato, el controlador imprime el nombre del botón del mouse en el que se hizo clic para desencadenar el evento. Si presionó una o ambas teclas, también se imprimirá el nombre de la tecla o las teclas que presionó.

Soporte técnico y comentarios

¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.