Type | Description | |||
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 AnchorFromPoint property to retrieve the identifier of the anchor element from the point.
Syntax for MouseMove event, /NET version, on:
private void MouseMoveEvent(object sender,short Button,short Shift,int X,int Y) { } Private Sub MouseMoveEvent(ByVal sender As System.Object,ByVal Button As Short,ByVal Shift As Short,ByVal X As Integer,ByVal Y As Integer) Handles MouseMoveEvent End Sub |
private void MouseMoveEvent(object sender, AxEXGRAPHLib._IGraphEvents_MouseMoveEvent e) { } void OnMouseMove(short Button,short Shift,long X,long Y) { } void __fastcall MouseMove(TObject *Sender,short Button,short Shift,int X,int Y) { } procedure MouseMove(ASender: TObject; Button : Smallint;Shift : Smallint;X : Integer;Y : Integer); begin end; procedure MouseMoveEvent(sender: System.Object; e: AxEXGRAPHLib._IGraphEvents_MouseMoveEvent); begin end; begin event MouseMove(integer Button,integer Shift,long X,long Y) end event MouseMove Private Sub MouseMoveEvent(ByVal sender As System.Object, ByVal e As AxEXGRAPHLib._IGraphEvents_MouseMoveEvent) Handles MouseMoveEvent End Sub Private Sub MouseMove(Button As Integer,Shift As Integer,X As Single,Y As Single) End Sub Private Sub MouseMove(ByVal Button As Integer,ByVal Shift As Integer,ByVal X As Long,ByVal Y As Long) End Sub LPARAMETERS Button,Shift,X,Y PROCEDURE OnMouseMove(oGraph,Button,Shift,X,Y) RETURN |
<SCRIPT EVENT="MouseMove(Button,Shift,X,Y)" LANGUAGE="JScript"> </SCRIPT> <SCRIPT LANGUAGE="VBScript"> Function MouseMove(Button,Shift,X,Y) End Function </SCRIPT> Procedure OnComMouseMove Short llButton Short llShift OLE_XPOS_PIXELS llX OLE_YPOS_PIXELS llY Forward Send OnComMouseMove llButton llShift llX llY End_Procedure METHOD OCX_MouseMove(Button,Shift,X,Y) CLASS MainDialog RETURN NIL void onEvent_MouseMove(int _Button,int _Shift,int _X,int _Y) { } function MouseMove as v (Button as N,Shift as N,X as OLE::Exontrol.Graph.1::OLE_XPOS_PIXELS,Y as OLE::Exontrol.Graph.1::OLE_YPOS_PIXELS) end function function nativeObject_MouseMove(Button,Shift,X,Y) return |
The following VB sample prints the cell's caption from the cursor ( if the control contains no inner cells. Use the SplitCell property to insert inner cells ) :
Private Sub Graph1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) On Error Resume Next ' Converts the container coordinates to client coordinates X = X / Screen.TwipsPerPixelX Y = Y / Screen.TwipsPerPixelY Dim h As HITEM Dim c As Long Dim hit As EXGRAPHLibCtl.HitTestInfoEnum ' Gets the item from (X,Y) h = Graph1.ItemFromPoint(X, Y, c, hit) If Not (h = 0) Then Debug.Print Graph1.Items.CellValue(h, c) & " HT = " & hit End If End Sub
The following VB sample displays the cell's caption from the cursor ( if the control contains inner cells ):
Private Sub Graph1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) On Error Resume Next ' Converts the container coordinates to client coordinates X = X / Screen.TwipsPerPixelX Y = Y / Screen.TwipsPerPixelY Dim h As HITEM Dim c As Long Dim hit As EXGRAPHLibCtl.HitTestInfoEnum ' Gets the item from (X,Y) h = Graph1.ItemFromPoint(X, Y, c, hit) If Not (h = 0) Or Not (c = 0) Then Debug.Print Graph1.Items.CellValue(h, c) & " HT = " & hit End If End Sub
The following C++ sample displays the cell's from the point:
#include "Items.h" static CString V2S( VARIANT* pv, LPCTSTR szDefault = _T("") ) { if ( pv ) { if ( pv->vt == VT_ERROR ) return szDefault; COleVariant vt; vt.ChangeType( VT_BSTR, pv ); return V_BSTR( &vt ); } return szDefault; } void OnMouseMoveGraph1(short Button, short Shift, long X, long Y) { long c = 0, hit = 0, hItem = m_graph.GetItemFromPoint( X, Y, &c, &hit ); if ( ( hItem != 0 ) || ( c != 0 ) ) { CItems items = m_graph.GetItems(); COleVariant vtItem( hItem ), vtColumn( c ); CString strCaption = V2S( &items.GetCellValue( vtItem, vtColumn ) ), strOutput; strOutput.Format( "Cell: '%s', Hit = %08X\n", strCaption, hit ); OutputDebugString( strOutput ); } }
The following VB.NET sample displays the cell's from the point:
Private Sub AxGraph1_MouseMoveEvent(ByVal sender As Object, ByVal e As AxEXGRAPHLib._IGraphEvents_MouseMoveEvent) Handles AxGraph1.MouseMoveEvent With AxGraph1 Dim i As Integer, c As Integer, hit As EXGRAPHLib.HitTestInfoEnum i = .get_ItemFromPoint(e.x, e.y, c, hit) If (Not (i = 0) Or Not (c = 0)) Then Debug.WriteLine("Cell: " & .Items.CellValue(i, c) & " Hit: " & hit.ToString()) End If End With End Sub
The following C# sample displays the cell's from the point:
private void axGraph1_MouseMoveEvent(object sender, AxEXGRAPHLib._IGraphEvents_MouseMoveEvent e) { int c = 0; EXGRAPHLib.HitTestInfoEnum hit; int i = axGraph1.get_ItemFromPoint( e.x, e.y, out c,out hit ); if ( ( i != 0 ) || ( c != 0 ) ) { object cap = axGraph1.Items.get_CellValue(i, c); string s = cap != null ? cap.ToString() : ""; s = "Cell: " + s + ", Hit: " + hit.ToString(); System.Diagnostics.Debug.WriteLine(s); } }
The following VFP sample displays the cell's from the point:
*** ActiveX Control Event *** LPARAMETERS button, shift, x, y local c, hit c = 0 hit = 0 with thisform.Graph1 .Items.DefaultItem = .ItemFromPoint( x, y, @c, @hit ) if ( .Items.DefaultItem <> 0 ) or ( c <> 0 ) wait window nowait .Items.CellValue( 0, c ) + " " + Str( hit ) endif endwith