ホイールイベントはフォーカスを持つウィンドウで優先的に処理されるようなのですが、場合によってはフォーカスよりもマウスカーソル位置を優先したい事があります。
今まで結構回りくどいやり方をしていたのですが、PreTranslateMessageにちょろっと書いたら上手く動いたようなので、載せておきます。
(あまり動作検証していませんが)
BOOL CMainFrame::PreTranslateMessage(MSG* pMsg)
{
if (pMsg->message == WM_MOUSEWHEEL) {
CWnd* pWnd = WindowFromPoint(pMsg->pt);
if (pWnd && IsChild(pWnd)) {
pMsg->hwnd = pWnd->GetSafeHwnd();
}
}
return __super::PreTranslateMessage(pMsg);
}







