我在对话框中加入了ToolBar,可是UPDATE_COMMAN_UI不起作用了,就没法实现ToolBar上面按钮的禁止.
很急,很重要.各位能帮我解决吗?
谢谢了!哪位有源码发给我吗!
[email protected]

解决方案 »

  1.   

    如果不用UPDATE_COMMAN_UI的话:
    CToolBar* pBar = &m_wndToolBar;
    UINT iButtonID;
    UINT iButtonStyle; 
    int  iButtonImage;
    pBar->GetButtonInfo(3, iButtonID, iButtonStyle,iButtonImage);
    iButtonStyle = 0;
    pBar->SetButtonInfo(3, iButtonID, iButtonStyle,iButtonImage);
    如果想用UPDATE_COMMAN_UI:
    http://www.codeguru.com/dialog/toolbars.shtml
      

  2.   

    重载CToolBar, 处理WM_IDLEUPDATECMDUI
    LRESULT CToolBarEx::OnIdleUpdateCmdUI(WPARAM wParam, LPARAM) 
    {
    CToolBar::OnIdleUpdateCmdUI(wParam, 0);  if (IsWindowVisible()) 
    {
    CFrameWnd *pParent = (CFrameWnd *)GetParent();
    if (pParent)
    OnUpdateCmdUI(pParent, (BOOL)wParam);
    }
    return 0L;
    }再Dialog中处理ON_MESSAGE_VOID(WM_KICKIDLE, OnKickIdle)void CMyDlg::OnKickIdle()
    {
    SendMessageToDescendants( WM_IDLEUPDATECMDUI );
    }然后UPDATE_COMMAN_UI就可用了,哈哈