TRACKMOUSEEVENT 结构 (winuser.h)

由 TrackMouseEvent 函数用来跟踪在指定的时间范围内,鼠标指针何时离开窗口或鼠标悬停在窗口上。

语法

typedef struct tagTRACKMOUSEEVENT {
  DWORD cbSize;
  DWORD dwFlags;
  HWND  hwndTrack;
  DWORD dwHoverTime;
} TRACKMOUSEEVENT, *LPTRACKMOUSEEVENT;

成员

cbSize

类型:DWORD

TRACKMOUSEEVENT 结构的大小(以字节为单位)。

dwFlags

类型:DWORD

请求的服务。 此成员可以是以下值的组合。

含义
TME_CANCEL
0x80000000
调用方希望取消先前的跟踪请求。 调用方还应指定要取消的跟踪类型。 例如,若要取消悬停跟踪,调用方必须传递 TME_CANCELTME_HOVER 标志。
TME_HOVER
0x00000001
调用方需要悬停通知。 通知作为 WM_MOUSEHOVER 消息传递。

如果调用方请求悬停跟踪,而悬停跟踪已处于活动状态,则将重置悬停计时器。

如果鼠标指针不在指定的窗口或区域上,则忽略此标志。

TME_LEAVE
0x00000002
调用方想要离开通知。 通知作为 WM_MOUSELEAVE 消息传递。 如果鼠标未在指定的窗口或区域上,则会立即生成离开通知,并且不会执行进一步的跟踪。
TME_NONCLIENT
0x00000010
调用方希望悬停并保留非工作区的通知。 通知以 WM_NCMOUSEHOVERWM_NCMOUSELEAVE 消息的形式传递。
TME_QUERY
0x40000000
函数填充 结构,而不是将其视为跟踪请求。 结构已填充,如果结构已传递到 TrackMouseEvent,它将生成当前跟踪。 唯一的异常是,如果在原始 TrackMouseEvent 请求期间指定了HOVER_DEFAULT,则返回的悬停超时始终是实际超时,而不是HOVER_DEFAULT

hwndTrack

类型:HWND

要跟踪的窗口的句柄。

dwHoverTime

类型:DWORD

如果在 dwFlags) (以毫秒为单位)指定了TME_HOVER,则悬停超时 (。 可以 HOVER_DEFAULT,这意味着使用系统默认悬停超时。

注解

系统默认悬停超时最初是菜单下拉列表时间,即 400 毫秒。 可以调用 SystemParametersInfo 并使用 SPI_GETMOUSEHOVERTIME 检索默认悬停超时。

系统默认悬停矩形与双击矩形相同。 可以调用 SystemParametersInfo 并使用 SPI_GETMOUSEHOVERWIDTHSPI_GETMOUSEHOVERHEIGHT 检索鼠标指针必须保留的矩形的大小,以便 TrackMouseEvent 生成 WM_MOUSEHOVER 消息。

要求

要求
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
标头 winuser.h (包括 Windows.h)

另请参阅

鼠标输入