(親)内に (子)をCMDIChildWnd含む があります。には、子ビューに送信するツールバーもあります。それはこれまでのところうまくいきます。これで、がアクティブ化される (たとえば、クリックする)たびに、メッセージは 親 ではなく に到着します。CReportViewCFormViewCMDIChildWndON_UPDATE_COMMAND_UICReportViewON_UPDATE_COMMAND_UICReportViewCFormView
私が今やりたいことは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;
}
しかし、それもうまくいきませんでした。誰にもアイデアはありますか?