大神们,帮忙解决一下
PostMessage(AfxGetMainWnd()->GetSafeHwnd(), notiCode, ctrlId, 0);执行后,
CXXXView::DefWindowProc中的message为什么不是notiCode的值呢?
CYYY::OnCommand 为公共的代码,对这个代码就不能做修改的,此段代码在dlg里面是正常运行的,不知道CView类和对话框类在这方面有什么区别?
帮忙解决一下
[使用编译器VS2010]
[代码段1]BOOL CYYY::OnCommand(WPARAM wParam, LPARAM lParam)
{
// TODO: Add your specialized code here and/or call the base class
UINT notiCode = HIWORD(wParam);
UINT ctrlId = LOWORD(wParam);
switch (notiCode) {
case BN_CLICKED:
// case CBN_SELENDOK:
{
::PostMessage(AfxGetMainWnd()->GetSafeHwnd(), notiCode, ctrlId, 0);
}
return TRUE;
}
return TRUE;
return CListCtrlCustom::OnCommand(wParam, lParam);
}
[代码段2]LRESULT CXXXView::DefWindowProc(UINT message, WPARAM wParam, LPARAM lParam)
{
//return CDialog::DefWindowProc(message, wParam, lParam);
// TODO: Add your specialized code here and/or call the base class
if (BN_CLICKED == message) {
int i;
return TRUE; // mark
}
return CDialog::DefWindowProc(message, wParam, lParam);
}