效果: 点击一张图片, 弹出一个对话框.
试了试, 只能在 HandleMessage 处理 WM_LBUTTONDOWN 消息.
LRESULT CMainDlg::HandleMessage (UINT uMsg, WPARAM wParam, LPARAM lParam)
{
LRESULT lRc = 0;
POINT pt;
CControlUI * pControl = NULL;
if (WM_LBUTTONDOWN == uMsg)
{
pt.x = GET_X_LPARAM(lParam);
pt.y = GET_Y_LPARAM(lParam);
pControl = m_PaintManager.FindControl(pt);
if (NULL != pControl)
{
if (pControl == m_pctrlxx)
{
DoDlgxx();
}
else if (pControl == m_pctrlyy)
{
ShowMsgBox(FUNCTION_NO_IMP);
}
}
}
if (m_PaintManager.MessageHandler(uMsg, wParam, lParam, lRc))
{
return lRc;
}
return __super::HandleMessage(uMsg, wParam, lParam);
}