Share via


Button Property [Visio 2003 SDK Documentation]

Returns the mouse button that was clicked to fire a MouseDown or MouseUp event.

longRet = object.Button

longRet    Long. The mouse button that was clicked. See Remarks for possible values.

object    Required. An expression that returns a MouseEvent object.

Version added

2003

Remarks

Possible values for longRet can be any of the values shown in the following table, which are declared in VisKeyButtonFlags in the Visio type library.

Constant Value

visMouseLeft

1

visMouseMiddle

16

visMouseRight

2

Example

This class module shows how to define a sink class called MouseListener that listens for events fired by mouse actions in the active window. It declares the object variable vsoWindow by using the WithEvents keyword. The class module also contains event handlers for the MouseDown, MouseMove, and MouseUp events.

To run this example, insert a new class module in your Microsoft Visual Basic for Applications (VBA) project, name it MouseListener, and insert the following code in the module.

Dim WithEvents vsoWindow As 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 "Button is: "; Button
        
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
            

Then, insert the following code in the ThisDocument project.

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

Save the document to initialize the class, and then click anywhere in the active window to fire a MouseDown event. In the Immediate window, the handler prints the value that represents the mouse button that was clicked to fire the event.

Applies to | MouseEvent object

See Also | MouseDown event | MouseEvent object | MouseMove event | MouseUp event