TRACKMOUSEEVENT
[New
- Windows NT]
The TRACKMOUSEEVENT
structure is used by the TrackMouseEvent function to track when the
mouse pointer leaves a window or hovers over a window for a specified amount of
time.
typedef struct tagTRACKMOUSEEVENT {
DWORD
cbSize;
DWORD
dwFlags;
HWND hwndTrack;
DWORD
dwHoverTime;
} TRACKMOUSEEVENT, *LPTRACKMOUSEEVENT;
Members
cbSize
Specifies the
size of the TRACKMOUSEEVENT structure.
dwFlags
Specifies the
services requested. This member can be a combination of the following values:
Value |
Meaning |
TME_CANCEL |
The
caller wants to cancel a prior tracking request. The
caller should also specify the type of tracking that it wants to cancel. For
example, to cancel hover tracking, the caller must pass the TME_CANCEL and
TME_HOVER flags. |
TME_HOVER |
The caller
wants hover notification. Notification is delivered as a WM_MOUSEHOVER
message. If the
caller requests hover tracking while hover tracking is already active, the
hover timer will be reset. This flag
is ignored if the mouse pointer is not over the specified window or area. |
TME_LEAVE |
The caller
wants leave notification. Notification is delivered as a WM_MOUSELEAVE
message. If
the mouse is not over the specified window or area, a leave notification is
generated immediately and no further tracking is performed. |
TME_QUERY |
The
function fills in the structure instead of treating it as a tracking request.
The structure is filled such that had that structure been passed to TrackMouseEvent
it would generate the current tracking. The only anomaly is that the hover
timeout returned is always the actual timeout and not HOVER_DEFAULT, if
HOVER_DEFAULT was specified during the original TrackMouseEvent
request. |
hwndTrack
Specifies the
handle of the window to track.
dwHoverTime
Specifies
the hover timeout (if TME_HOVER was specified in dwFlags), in milliseconds. Can
be HOVER_DEFAULT, which means to use the system default hover timeout.
Remarks
The system
default hover timeout is initially the menu dropdown time, which is 400
milliseconds. You can call SystemParametersInfo and use
SPI_GETMOUSEHOVERTIME to retrieve the default hover timeout.
The system
default hover rectangle is the same as the double-click rectangle. You can call
SystemParametersInfo and use SPI_GETMOUSEHOVERWIDTH and
SPI_GETMOUSEHOVERHEIGHT to retrieve the size of the rectangle within which the
mouse pointer has to stay for TrackMouseEvent to generate a
WM_MOUSEHOVER message.
See Also