各位大佬好,最近遇到一個問題,需要在滑鼠移出一個CPane時進行一些處理,通過查資料發現WM_MOUSELEAVE可以解決此問題,但在開發程序中發現,當滑鼠從CPane中的靠近CPane邊緣的一個子控制元件中將滑鼠快速移出CPane時,WM_MOUSELEAVE便有可能不會觸發,請問有沒有什么方案可以完美檢測到所有的滑鼠離開CPane的事件呢?先謝過各位大佬!
uj5u.com熱心網友回復:
TrackMouseEvent 先注冊 WM_MOUSELEAVEuj5u.com熱心網友回復:
void CPngButton::OnMouseMove(UINT nFlags, CPoint point){
TRACKMOUSEEVENT tme;
ZeroMemory(&tme,sizeof(TRACKMOUSEEVENT));
tme.cbSize = sizeof(tme);
tme.hwndTrack = m_hWnd;
tme.dwFlags = TME_LEAVE|TME_HOVER;
tme.dwHoverTime = 50;
_TrackMouseEvent(&tme);
// CButton::OnMouseMove(nFlags, point);
}
調整 紅的
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/28713.html
標籤:基礎類
上一篇:VC2012呼叫Python時無法打開包含檔案“inttypes.h”
下一篇:MFC加載google地圖
