報錯觸發點為:雙擊ListControl控制元件的空白區域。但奇怪的是,win7一切正常,在win10下才會報錯。
以下是專用于處理雙擊空白區域的代碼:
LPNMITEMACTIVATE pNMItemActivate = reinterpret_cast<LPNMITEMACTIVATE>(pNMHDR);
// TODO: 在此添加控制元件通知處理程式代碼
int nRow = m_testLC.GetNextItem(-1, LVNI_SELECTED);
if (nRow == -1){
return;
}
Win7下能捕獲雙擊空行觸發的滑鼠雙擊事件,Win10下不能捕獲,應該說根本不能觸發這個雙擊事件,且會報如標題上的錯誤:終止被呼叫!
我在所有的方法中設定了斷點(包括重繪LC控制元件),但都沒有能在觸發錯誤前觸發這些斷點。
同時,我也查了其他大佬的解決方案,感覺都不太適合于我,在此請教各位大佬,這究竟是什么情況,非常感謝!!!
uj5u.com熱心網友回復:
https://www.cnblogs.com/yxwkf/p/5247046.htmluj5u.com熱心網友回復:
謝謝版主,這個方案我也找到了,但不適合我的情況。uj5u.com熱心網友回復:
奔潰時,點擊重試,看呼叫堆疊, 逐級分析道你代碼處 修改解決之uj5u.com熱心網友回復:
處理雙擊空白區域 ? 沒有 ITEM !uj5u.com熱心網友回復:
void CListCtrl3Dlg::OnDblclkDatabase(NMHDR* pNMHDR, LRESULT* pResult){
// TODO: Add your control notification handler code here
*pResult = 0;
}
uj5u.com熱心網友回復:
在OnDblclk 中檢測 是否 在 空白處uj5u.com熱心網友回復:
開發環境在win7上,沒辦法在win10上看堆疊,如果還是找不到辦法,我會在win10上裝一個環境,去測驗一下,謝謝!uj5u.com熱心網友回復:
有處理的代碼,但問題是在win10上根本沒有進入雙擊事件中,程式就崩了...uj5u.com熱心網友回復:
有處理的代碼,但問題是在win10上根本沒有進入雙擊事件中,程式就崩了...轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/181323.html
標籤:基礎類
上一篇:求EXCEL檔案改名VBA陳述句
下一篇:如何去除影像毛刺
