Click to Rate and Give Feedback
MSDN
MSDN Library
User Interface
User Input
Mouse Input
Functions
 TrackMouseEvent Function

  Switch on low bandwidth view
TrackMouseEvent Function

The TrackMouseEvent function posts messages when the mouse pointer leaves a window or hovers over a window for a specified amount of time.

Syntax

BOOL TrackMouseEvent(      
    LPTRACKMOUSEEVENT lpEventTrack );

Parameters

lpEventTrack
[in, out] Pointer to a TRACKMOUSEEVENT structure that contains tracking information.

Return Value

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 function can post the following messages.

MessageMeaning
WM_NCMOUSEHOVERWindows 98/Me, Windows 2000/XP: The same meaning as WM_MOUSEHOVER except this is for the nonclient area of the window.
WM_NCMOUSELEAVEWindows 98/Me, Windows 2000/XP: The same meaning as WM_MOUSELEAVE except this is for the nonclient area of the window.
WM_MOUSEHOVERThe 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_MOUSELEAVEThe 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.

Remarks

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.

Note  The _TrackMouseEvent function calls TrackMouseEvent if it exists, otherwise _TrackMouseEvent emulates TrackMouseEvent. The _TrackMouseEvent function is in commctrl.h and is exported by COMCTRL32.DLL.

Function Information

Minimum DLL Versionuser32.dll
HeaderDeclared in Winuser.h, include Windows.h
Import libraryUser32.lib
Minimum operating systems Windows 98, Windows NT 4.0
UnicodeImplemented as Unicode version.

See Also

Tags What's this?: Add a tag
Community Content   What is Community Content?
Add new content RSS  Annotations
Additional scenario when tracking requested by TrackMouseEvent is canceled      Aleksandr Golovanov   |   Edit   |   Show History
Call of DoDragDrop cancels all tracking requested by TrackMouseEvent without any notifying messages.
vb.net syntax      dmex   |   Edit   |   Show History
<DllImport("user32.dll", SetLastError:=True, ExactSpelling:=True)> _
Public Shared Function TrackMouseEvent(ByVal tme As TRACKMOUSEEVENT) As Boolean
End Function
Tags What's this?: Add a tag
Flag as ContentBug
C# syntax      dmex   |   Edit   |   Show History
[DllImport("user32.dll", SetLastError=true, ExactSpelling=true)]
public static extern bool TrackMouseEvent(TRACKMOUSEEVENT tme);
Tags What's this?: Add a tag
Flag as ContentBug
Processing
© 2009 Microsoft Corporation. All rights reserved. Terms of Use  |  Trademarks  |  Privacy Statement
Page view tracker