event MouseMove (Button as Integer, Shift as Integer, X as OLE_XPOS_PIXELS, Y as OLE_YPOS_PIXELS)
Occurs when the user moves the mouse.

 TypeDescription 
   Button as Integer An integer that corresponds to the state of the mouse buttons in which a bit is set if the button is down.  
   Shift as Integer An integer that corresponds to the state of the SHIFT, CTRL, and ALT keys.  
   X as OLE_XPOS_PIXELS A single that specifies the current X location of the mouse pointer. The x values is always expressed in container coordinates  
   Y as OLE_YPOS_PIXELS A single that specifies the current Y location of the mouse pointer. The y values is always expressed in container coordinates  
The MouseMove event is generated continually as the mouse pointer moves across objects. Unless another object has captured the mouse, an object recognizes a MouseMove event whenever the mouse position is within its borders. Call the HitTest method to determine the location of the specified point relative to the client area of a xml grid view control. Use the NodeFromPoint property to get the node from the cursor.

The following VB sample prints the name of the node over the cursor:

Private Sub XMLGrid1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
    With XMLGrid1
        Dim n As EXMLGRIDLibCtl.Node
        Set n = .NodeFromPoint(X / Screen.TwipsPerPixelX, Y / Screen.TwipsPerPixelY)
        If Not n Is Nothing Then
            Debug.Print "Hovers '" & n.Name & "'."
        End If
    End With
End Sub

The following VB sample displays the hit test code while user moves the mouse:

Private Sub XMLGrid1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
    With XMLGrid1
        Dim n As EXMLGRIDLibCtl.Node, h As EXMLGRIDLibCtl.HitTestEnum
        h = .HitTest(X / Screen.TwipsPerPixelX, Y / Screen.TwipsPerPixelY, n)
        If Not h = 0 Then
            If (Not n Is Nothing) Then
                Debug.Print "Node = " & n.Name & " H = " & Hex(h)
            Else
                Debug.Print "H = " & Hex(h)
            End If
        End If
    End With
End Sub 

The following C++ sample prints the name of the node from the cursor:

#include "Node.h"
void OnMouseMoveXmlgrid1(short Button, short Shift, long X, long Y) 
{
	CNode node = m_xmlgrid.GetNodeFromPoint( X, Y );
	if ( node.m_lpDispatch != NULL )
	{
		CString strName = node.GetName();
		OutputDebugString( strName );
	}
}

The following VB.NET sample prints the name of the node from the cursor:

Private Sub AxXMLGrid1_MouseMoveEvent(ByVal sender As Object, ByVal e As AxEXMLGRIDLib._IXMLGridEvents_MouseMoveEvent) Handles AxXMLGrid1.MouseMoveEvent
    With AxXMLGrid1
        Dim n As EXMLGRIDLib.Node = .get_NodeFromPoint(e.x, e.y)
        If Not n Is Nothing Then
            Debug.Print("You have clicked the '" & n.Name & "'.")
        End If
    End With
End Sub

The following C# sample prints the name of the node from the cursor:

private void axXMLGrid1_MouseMoveEvent(object sender, AxEXMLGRIDLib._IXMLGridEvents_MouseMoveEvent e)
{
	EXMLGRIDLib.Node node = axXMLGrid1.get_NodeFromPoint(e.x, e.y);
	if (node != null)
		System.Diagnostics.Debug.Write(node.Name);
}

The following VFP sample prints the name of the node from the cursor:

*** ActiveX Control Event ***
LPARAMETERS button, shift, x, y

with thisform.XMLGrid1
	n = .NodeFromPoint(x, y )
	if ( !isnull(n) )
		wait window nowait n.Name
	endif
endwith

 

 


Send comments on this topic.
© 1999-2008 Exontrol Inc, Software. All rights reserved.