64,631
社区成员
发帖
与我相关
我的任务
分享
void CButtonEx::OnMouseMove(UINT nFlags, CPoint point)
{
// TODO: Add your message handler code here and/or call default
//触发WM_MOUSELEAVE||WM_MOUSEHOVER
if (!m_bTracking)
{
TRACKMOUSEEVENT tme;
tme.cbSize = sizeof(tme);
tme.hwndTrack = m_hWnd;
tme.dwFlags = TME_LEAVE | TME_HOVER;
tme.dwHoverTime = 1;
m_bTracking = _TrackMouseEvent(&tme);
//m_bTracking = FALSE;
}
CButton::OnMouseMove(nFlags, point);
}
LRESULT CButtonEx::OnMouseLeave(WPARAM wParam,LPARAM lParam)
{
m_bOver=FALSE;
m_bTracking=FALSE;
InvalidateRect(NULL,FALSE);
return 0;
}
LRESULT CButtonEx::OnMouseHover(WPARAM wParam,LPARAM lParam)
{
m_bOver=TRUE;
//m_bTracking=FALSE;
InvalidateRect(NULL);
return 0;
}C/C++