TrackMouseEvent function (winuser.h)
Posts messages when the mouse pointer leaves a window or hovers over a window for a specified amount of time.
BOOL TrackMouseEvent( LPTRACKMOUSEEVENT lpEventTrack );
A pointer to a TRACKMOUSEEVENT structure that contains tracking information.
If the function succeeds, the return value is nonzero .
If the function fails, return value is zero. To get extended error information, call GetLastError.
The mouse pointer is considered to be hovering when it stays within a specified rectangle for a specified period of time. Call SystemParametersInfo. and use the values SPI_GETMOUSEHOVERWIDTH, SPI_GETMOUSEHOVERHEIGHT, and SPI_GETMOUSEHOVERTIME to retrieve the size of the rectangle and the time.
The function can post the following messages.
|WM_NCMOUSEHOVER||The same meaning as WM_MOUSEHOVER except this is for the nonclient area of the window.|
|WM_NCMOUSELEAVE||The same meaning as WM_MOUSELEAVE except this is for the nonclient area of the window.|
|WM_MOUSEHOVER||The mouse hovered over the client area of the window for the period of time specified in a prior call to TrackMouseEvent. Hover tracking stops when this message is generated. The application must call TrackMouseEvent again if it requires further tracking of mouse hover behavior.|
|WM_MOUSELEAVE||The mouse left the client area of the window specified in a prior call to TrackMouseEvent. All tracking requested by TrackMouseEvent is canceled when this message is generated. The application must call TrackMouseEvent when the mouse reenters its window if it requires further tracking of mouse hover behavior.|
|Minimum supported client||Windows 2000 Professional [desktop apps only]|
|Minimum supported server||Windows 2000 Server [desktop apps only]|
|Header||winuser.h (include Windows.h)|
|API set||ext-ms-win-ntuser-mouse-l1-1-0 (introduced in Windows 8)|