LRESULT CDlgPopup::OnMessage(UINT uID, UINT Msg, WPARAM wParam, LPARAM lParam) { // 遍历每个控件,看哪个控件是此ID,则进行事件的处理 CControlBase * pThisControlBase = NULL; for (size_t i = 0; i < m_vecControl.size(); i++) { CControlBase * pControlBase = m_vecControl.at(i); if (pControlBase && (pControlBase->GetControlID() == uID)) { pThisControlBase = pControlBase; pControlBase->OnMessage(uID, Msg, wParam, lParam); } } return 0; }
// 消息处理 LRESULT CDuiPanel::OnMessage(UINT uID, UINT Msg, WPARAM wParam, LPARAM lParam) { // 遍历每个控件,看哪个控件是此ID,则进行事件的处理 for (size_t i = 0; i < m_vecControl.size(); i++) { CControlBase * pControlBase = m_vecControl.at(i); if (pControlBase && (pControlBase->GetControlID() == uID)) { return pControlBase->OnMessage(uID, Msg, wParam, lParam); } } if(m_pDuiPluginObject) { return m_pDuiPluginObject->OnMessage(uID, Msg, wParam, lParam); } // 如果事件未处理,则调用父类的消息函数,最终会送给各事件处理对象进行处理 return __super::OnMessage(uID, Msg, wParam, lParam); }