Compartilhar via


Propriedade MouseEvent.KeyButtonState (Visio)

Retorna o estado dos botões do mouse e as teclas SHIFT e CTRL associadas a um evento de mouse. Somente leitura.

Sintaxe

expression. KeyButtonState

Expressão Uma variável que representa um objeto MouseEvent .

Valor de retorno

Long

Comentários

Os valores possíveis para KeyButtonState podem ser uma combinação de qualquer um dos valores mostrados na tabela a seguir, que são declarados em VisKeyButtonFlags na biblioteca de tipos do Visio. Por exemplo, se KeyButtonState retornar 9, ele indicará que o usuário clicou no botão esquerdo do mouse enquanto pressionava CTRL.

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

Exemplo

Esse módulo de classe mostra como definir uma classe de coletor chamada MouseListener que escuta eventos disparados por ações do mouse na janela ativa. Ele declara a variável do objeto vsoWindow usando a palavra-chave WithEvents. O módulo de classe também contém um manipulador de eventos para o evento MouseDown que imprime para a janela Immediate o estado dos botões do mouse e as teclas CTRL e SHIFT quando o evento disparou.

Para executar este exemplo, insira um novo módulo de classe em seu projeto VBA, nomeie-o MouseListener e insira o código a seguir no 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

Em seguida, insira o código a seguir no projeto 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

Salve o documento para inicializar a classe e clique em qualquer lugar na janela ativa (opcionalmente, enquanto pressiona SHIFT e/ou CTRL) para disparar um evento MouseDown . Na janela Immediate, o manipulador imprime o nome do botão do mouse clicado para disparar o evento. Se você pressionou uma ou ambas as teclas, o nome da tecla ou das teclas pressionadas também será impresso.

Suporte e comentários

Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.