您的位置:首页 > 其它

MFC鼠标移入移出事件

2013-05-20 21:44 447 查看
鼠标的移入消息,可以使用mousemove就可以知道了。

//定义一个变量m_bTracking,初始化为false.

public:

BOOL m_bTracking;

//在mousemove中加上下面代码。

void CTreeList::OnMouseMove(UINT nFlags, CPoint point)

{

// TODO: Add your message handler code here and/or call default

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);

}

}

//为程序添加鼠标移出消息

ON_MESSAGE(WM_MOUSELEAVE, OnMouseLeave)//鼠标离开

ON_MESSAGE(WM_MOUSEHOVER, OnMouseHover)//鼠标悬挂

//添加函数

afx_msg void OnMouseLeave(WPARAM wParam, LPARAM lParam);//鼠标离开

afx_msg void OnMouseHover(WPARAM wParam, LPARAM lParam);//鼠标悬挂

//编写函数

void CTreeList::OnMouseLeave(WPARAM wParam, LPARAM lParam)//鼠标离开

{

m_bTracking = FALSE;//复位鼠标追踪标志

}

void CTreeList::OnMouseHover(WPARAM wParam, LPARAM lParam)//鼠标悬挂

{

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: