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. Use the ClientToCursor method to convert client coordinates to cursor coordinates. Use the TextLine property to retrieve the line giving its index.

The following VB sample displays the line from the cursor:

Private Sub Edit1_MouseMove(Button As Integer, Shift As Integer, x As Single, y As Single)
    With Edit1
        Dim i As Long, c As Long
        .ClientToCursor x / Screen.TwipsPerPixelX, y / Screen.TwipsPerPixelY, c, i
        If (i > 0) Then
            Debug.Print .TextLine(i)
        End If
    End With
End Sub

The following C++ sample displays the line from the cursor:

void OnMouseMoveEdit1(short Button, short Shift, long X, long Y) 
{
	long nLine = 0, nColumn = 0;
	m_edit.ClientToCursor( X, Y, &nColumn, &nLine );
	if ( nLine > 0 )
		OutputDebugString( m_edit.GetTextLine( nLine ) );
}

The following VB.NET sample displays the line from the cursor:

Private Sub AxEdit1_MouseMoveEvent(ByVal sender As Object, ByVal e As AxEXEDITLib._IEditEvents_MouseMoveEvent) Handles AxEdit1.MouseMoveEvent
    With AxEdit1
        Dim i As Integer, c As Integer
        .ClientToCursor(e.x, e.y, c, i)
        If (i > 0) Then
            Debug.WriteLine(.get_TextLine(i))
        End If
    End With
End Sub

The following C# sample displays the line from the cursor:

private void axEdit1_MouseMoveEvent(object sender, AxEXEDITLib._IEditEvents_MouseMoveEvent e)
{
	int iLine = 0, iColumn = 0;
	axEdit1.ClientToCursor(e.x, e.y, out iColumn, out iLine);
	if (iLine > 0)
		System.Diagnostics.Debug.WriteLine(axEdit1.get_TextLine(iLine));
}

The following VFP sample displays the line from the cursor:

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

with thisform.Edit1
	local i, c
	i = 0
	c = 0
	.ClientToCursor(x, y, @c, @i)
	If (i > 0) Then
    	wait window nowait .TextLine(i)
	EndIf
endwith



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