Event XbpWindow():enter Foundation

Mouse moved into display rectangle.

:enter := {| aPos, uNIL, self | ... }
:enter( <aPos> ) --> self
xbeM_Enter (1048581)
<aPos> is an array containing two elements { nX, nY } that specify the current position of the mouse pointer. By default, the coordinates are relative to the lower left corner of the parent.

This method returns the object executing the method (self).


The xbeM_Enter event is generated when the mouse pointer is moved into the display rectangle of an Xbase Part. Together with its counterpart xbeM_Leave, xbeM_Enter can be used to detect when the mouse is positioned over the object. This can be used to give visual feedback as to which control would be activated if the mouse was clicked at a certain position.

In order to receive the xbeM_Enter notification, an Xbase Part must be configured to track mouse pointer movement. This is done automatically when a code block is assigned to the :enter callback slot. If xbeM_Enter is to be processed via the callback method :enter(), the method must be overloaded in a derived class. Furthermore, :setTrackPointer() must be called explicitly. This may be done in the :create() method of the derived class.

The xbeM_Enter event is sent synchronously via the :handleEvent() method of an XbpWindow object. This means that xbeM_Enter will not be retrieved by the AppEvent() function. As it is generated while the user moves the mouse, we strongly discourage to perform lengthy operations while processing the event.

Xbase Parts derived from XbpWindow maintain a special state to detect whether the mouse pointer is currently placed over the object. See member variable :controlState for further information.

Usage with ActiveX: The event xbeM_Enter is not supported for ActiveX controls. If an ActiveX control supports similar functionality, the corresponding COM/ActiveX methods or interfaces must be used instead.


If you see anything in the documentation that is not correct, does not match your experience with the particular feature or requires further clarification, please use this form to report a documentation issue.