我在(父)中有CMDIChildWnd
一个(子)。也有发送到它的子视图的工具栏。到目前为止有效。现在,只要激活(例如单击它),消息就会到达,而不是父。CReportView
CFormView
CMDIChildWnd
ON_UPDATE_COMMAND_UI
CReportView
ON_UPDATE_COMMAND_UI
CReportView
CFormView
我现在要做的是ON_UPDATE_COMMAND_UI
在子视图中捕获消息并以某种方式将它们中继到父视图。我尝试覆盖该CWnd::PreTranslateMessage()
方法并调用父视图的SendMessage()
方法,但ON_UPDATE_COMMAND_UI
没有到达那里。
我还尝试了以下
BEGIN_MESSAGE_MAP(CUntisSimpleGrid, CReportView)
ON_MESSAGE(WM_IDLEUPDATECMDUI, OnIdleUpdate)
END_MESSAGE_MAP()
LRESULT CUntisSimpleGrid::OnIdleUpdate(WPARAM wParam, LPARAM lParam)
{
CWnd *pParentView = GetParent();
UpdateDialogControls(pParentView, FALSE);
return 0L;
}
但这也没有用。有人有想法吗?