我升级了我以前的MFC工程到MFC Feature Pack.
在使用CMFCToolBar的时候, 当我的CMFCToolBar是Floating, 如果我的主窗口(CMainFrame)失去焦点的时候或者当CMFCToolBar时去焦点的时候,
我的Toolbar就会不见了(被隐藏了).有什么办法可以让我的CMFCToolBar永远是在显示的状态下?
我知道CMFCToolBar当被Undock了, MFC就会构建一个CPanFrameWnd, 然后把CMFCToolBar作为它的一个Child。谢谢了.

解决方案 »

  1.   

    可以给出创建CMFCToolBar的代码吗?
    我现在使用的(产生上述的问题)是:CMFCtoolBar m_wndToolbar;
    //
    //...........
    .........
    //
    m_wndToolBar.Create(
    this,
    WS_CHILD | WS_VISIBLE | CBRS_LEFT | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_HIDE_INPLACE | CBRS_SIZE_DYNAMIC | CBRS_GRIPPER | CBRS_BORDER_3D |CBRS_FLOAT_MULTI,
    ID_VIEW_TOOLS);
      

  2.   

    刚试了, 不行m_wndToolBar.Create( 
    this, 
    WS_CHILD | WS_VISIBLE | CBRS_LEFT | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC | CBRS_GRIPPER | CBRS_BORDER_3D |CBRS_FLOAT_MULTI, 
    ID_VIEW_TOOLS);
    //
    m_wndToolBar.SetPaneStyle(m_wndToolBar.GetPaneStyle() ^ CBRS_HIDE_INPLACE);如果我没说清楚我的问题的话:
    当我的CMFCToolbar是floating的时候, 我使用鼠标点击其他窗口, 例如IE, 然后我的CMFCToolbar就不见了。
    我现在我做的是:
    在我的CMFCToolbar里有一个button:void CMainFrame::OnShowOrHide()
    {
       ShowWindow(m_bShow);
       AfxGetApp()->m_nCmdShow = m_bShow;
       m_bShow = (m_bShow == SW_SHOW)?SW_SHOW:SW_HIDE;
    }当我点击这个按钮后, 我的主窗口就隐藏了, 可是当我的CMFCToolbar失去Focus后, 我的CMFCToolbar就不见了。。在我转换前我使用CToolbar的时候没有这样的问题啊谢谢