0

我有一个由CreateWindowEx(NULL, WC_TABCONTROL,...). 当鼠标悬停在选项卡项上时,我想收到通知。选项卡控件具有样式TCS_TOOLTIPS,当鼠标在选项卡项上停留TTDT_INITIAL毫秒数(其默认值为双击时间)时,它将显示一个工具提示。

但是当鼠标悬停在标签项上时,我也需要立即通知。但我不想修改TTDT_INITIAL值。实际上,当鼠标悬停在未选中的选项卡项上时,它会默认将颜色更改为蓝色。但我找不到这件事的通知(及其接收者)。

所以我想知道是否有办法be notified immediately when a mouse is over a tab item(仅限winapi)。

4

1 回答 1

4

没有针对该特定目的的通知。选项卡不是它们自己的控件,整个 TabControl 作为一个整体是一个控件。您可以做的是让 TabControl 的窗口过程捕获WM_MOUSEMOVE消息,然后调用TabCtrl_HitTest()以确定当前位于鼠标下方的选项卡。跟踪当前选项卡,以便您可以检测鼠标何时越过选项卡边界移动到新选项卡上。

于 2012-08-01T23:52:55.817 回答