Compartilhar via


Evento Application.MouseDown (Visio)

Ocorre quando um botão do mouse é clicado.

Sintaxe

expressão. MouseDown (Botão, KeyButtonState, x, y, CancelDefault)

expressão Uma variável que representa um Aplicativo objeto.

Parâmetros

Nome Obrigatório/Opcional Tipo de dados Descrição
Button Obrigatório Long O botão do mouse que foi pressionado. Os valores possíveis são declarados em VisKeyButtonFlags.
KeyButtonState Obrigatório Long O estado dos botões do mouse e as teclas Shift e Ctrl para o evento. Os valores possíveis podem ser uma combinação dos valores declarados em VisKeyButtonFlags. Por exemplo, se KeyButtonState retornar 9, ele indicará que o usuário clicou no botão esquerdo do mouse enquanto pressionava Ctrl.
x Obrigatório Double A coordenada x do ponteiro do mouse.
y Obrigatório Double A coordenada y do ponteiro do mouse.
CancelDefault Obrigatório Boolean False se o Microsoft Visio deve processar a mensagem que recebe desse evento; caso contrário, True.

Comentários

Se você definiu CancelDefault como True, o Visio não irá processar a mensagem recebida quando o botão do mouse for clicado.

Ao contrário de alguns outros eventos do Visio, o MouseDown não tem o prefixo Query, mas, no entanto, é um evento de consulta. Ou seja, você pode cancelar o processamento da mensagem enviada pelo MouseDown, definindo CancelDefault como True ou, se estiver usando o método VisEventProc para lidar com o evento, retornando True. Para obter mais informações, consulte os tópicos do método VisEventProc e de quaisquer dos eventos de consulta (por exemplo, o evento QueryCancelSuspend) nesta referência.

Se estiver usando o Microsoft Visual Basic ou o Visual Basic for Applications (VBA), a sintaxe deste tópico descreverá uma maneira comum e eficiente de lidar com eventos.

Se você quiser criar seus próprios objetos Event , use o método Add ou AddAdvise .

Para criar um objeto Event que execute um complemento, use o método Add, uma vez que ele aplica-se à coleção EventList.

Para criar um objeto Event que receba notificação, use o método AddAdvise.

Para localizar um código de evento que você deseja criar, consulte Códigos de eventos.

Exemplo

Este módulo de classe mostra como definir uma classe de sincronização 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 manipuladores de eventos para os eventos MouseDown, MouseMove e MouseUp .

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) 
 
 If Button = 1 Then 
 
 Debug.Print "Left mouse button clicked" 
 
 ElseIf Button = 2 Then 
 
 Debug.Print "Right mouse button clicked" 
 
 ElseIf Button = 16 Then 
 
 Debug.Print "Center mouse button clicked" 
 
 End If 
 
End Sub 
 
Private Sub vsoWindow_MouseMove(ByVal Button As Long, ByVal KeyButtonState As Long, ByVal x As Double, ByVal y As Double, CancelDefault As Boolean) 
 
 Debug.Print "x-position is "; x 
 Debug.Print "y-position is "; y 
 
End Sub 
 
Private Sub vsoWindow_MouseUp(ByVal Button As Long, ByVal KeyButtonState As Long, ByVal x As Double, ByVal y As Double, CancelDefault As Boolean) 
 
 If Button = 1 Then 
 
 Debug.Print "Left mouse button released" 
 
 ElseIf Button = 2 Then 
 
 Debug.Print "Right mouse button released" 
 
 ElseIf Button = 16 Then 
 
 Debug.Print "Center mouse button released" 
 
 End If 
 
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 da janela ativa para disparar um evento MouseDown. Na janela Immediate, o manipulador imprime o nome do botão do mouse clicado para disparar o evento.

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.