TRACKMOUSEEVENT 结构 (winuser.h)
由 TrackMouseEvent 函数用来跟踪在指定的时间范围内,鼠标指针何时离开窗口或鼠标悬停在窗口上。
语法
typedef struct tagTRACKMOUSEEVENT {
DWORD cbSize;
DWORD dwFlags;
HWND hwndTrack;
DWORD dwHoverTime;
} TRACKMOUSEEVENT, *LPTRACKMOUSEEVENT;
成员
cbSize
类型:DWORD
TRACKMOUSEEVENT 结构的大小(以字节为单位)。
dwFlags
类型:DWORD
请求的服务。 此成员可以是以下值的组合。
值 | 含义 |
---|---|
|
调用方希望取消先前的跟踪请求。 调用方还应指定要取消的跟踪类型。 例如,若要取消悬停跟踪,调用方必须传递 TME_CANCEL 和 TME_HOVER 标志。 |
|
调用方需要悬停通知。 通知作为 WM_MOUSEHOVER 消息传递。
如果调用方请求悬停跟踪,而悬停跟踪已处于活动状态,则将重置悬停计时器。 如果鼠标指针不在指定的窗口或区域上,则忽略此标志。 |
|
调用方想要离开通知。 通知作为 WM_MOUSELEAVE 消息传递。 如果鼠标未在指定的窗口或区域上,则会立即生成离开通知,并且不会执行进一步的跟踪。 |
|
调用方希望悬停并保留非工作区的通知。 通知以 WM_NCMOUSEHOVER 和 WM_NCMOUSELEAVE 消息的形式传递。 |
|
函数填充 结构,而不是将其视为跟踪请求。 结构已填充,如果结构已传递到 TrackMouseEvent,它将生成当前跟踪。 唯一的异常是,如果在原始 TrackMouseEvent 请求期间指定了HOVER_DEFAULT,则返回的悬停超时始终是实际超时,而不是HOVER_DEFAULT。 |
hwndTrack
类型:HWND
要跟踪的窗口的句柄。
dwHoverTime
类型:DWORD
如果在 dwFlags) (以毫秒为单位)指定了TME_HOVER,则悬停超时 (。 可以 HOVER_DEFAULT,这意味着使用系统默认悬停超时。
注解
系统默认悬停超时最初是菜单下拉列表时间,即 400 毫秒。 可以调用 SystemParametersInfo 并使用 SPI_GETMOUSEHOVERTIME 检索默认悬停超时。
系统默认悬停矩形与双击矩形相同。 可以调用 SystemParametersInfo 并使用 SPI_GETMOUSEHOVERWIDTH 和 SPI_GETMOUSEHOVERHEIGHT 检索鼠标指针必须保留的矩形的大小,以便 TrackMouseEvent 生成 WM_MOUSEHOVER 消息。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] |
标头 | winuser.h (包括 Windows.h) |