如何知道鼠标进入及离开CHtmlView(或它的子类)?关键字 鼠标 进入 离开CHtmlView如何知道鼠标进入及离开CHtmlView(或它的子类)?(一),新建一个单文档工程HtmlCtrl,视图类基于CHtmlView。 (二),在#include (三),在CHtmlCtrlView中增加一个成员变量:bool m_bMouseOver,并在构造函数中赋初值为false。 (四),重写CHtmlCtrlView::PreTranslateMessage函数,代码如下: BOOL CHtmlCtrlView::PreTranslateMessage(MSG* pMsg) { if( WM_MOUSEMOVE == pMsg->message ) { if(!m_bMouseOver) { TRACE(_T("Mouse enter\n")); m_bMouseOver = TRUE; TRACKMOUSEEVENT tme; tme.cbSize = sizeof(tme); tme.dwFlags = TME_HOVER | TME_LEAVE; tme.hwndTrack = pMsg->hwnd; tme.dwHoverTime = HOVER_DEFAULT; ::TrackMouseEvent(&tme); } } else if( WM_MOUSELEAVE == pMsg->message ) { TRACE(_T("Mouse Leave!\n")); m_bMouseOver = FALSE; } return CHtmlView::PreTranslateMessage(pMsg); }
|
|||||||