我想实现的界面为       |m_BottomCtrBar|m_BottomCtrBar1|   将下面从中间分开!当我使用
DockControlBar(&m_BottomCtrBar, AFX_IDW_DOCKBAR_BOTTOM);   //停靠在底部
RecalcLayout();   
CRect   rect;   
m_BottomCtrBar.GetWindowRect(rect);   
rect.OffsetRect(1, 0);     
DockControlBar(&m_BottomCtrBar1, AFX_IDW_DOCKBAR_BOTTOM,rect);   //停靠在底部                    出现
                      |m_BottomCtrBar         |CtrBar1|   将下面从中间分开! 前面的m_BottomCtrBar占了一大部分,!请问怎么修改呢?有没有实例 啊,给一分
[email protected]

解决方案 »

  1.   

    void CMainFrame::DockControlBarLeftOf(CToolBar* Bar,CToolBar* LeftOf) 
       { //设置工具条并列停靠在同一条边上 
       Crect rect; //矩形区域定义 
       DWORD dw; 
       UINT n=0; 
       RecalcLayout();//重新显示 
       LeftOf->GetWindowRect(&rect); 
       rect.OffsetRect(1,0);//设置偏移值以停靠在同一边上 
       dw=LeftOf->GetBarStyle(); 
       n=(dw&CBRS_ALIGN_TOP)?AFX_IDW_DOCKBAR_TOP:n; 
       n=(dw&CBRS_ALIGN_BOTTOM&&n==0)?AFX_IDW_DOCKBAR_BOTTOM:n; 
       n=(dw&CBRS_ALIGN_LEFT&&n==0)?AFX_IDW_DOCKBAR_LEFT:n; 
       n=(dw&CBRS_ALIGN_RIGHT&&n==0)?AFX_IDW_DOCKBAR_RIGHT:n; 
       DockControlBar(Bar,n,&rect); 
       } 
      

  2.   

    我只知道在BCG中有这么一个函数
    CBCGPFrameWnd::DockControlBarLeftOf (CBCGPControlBar* pBar, CBCGPControlBar* pLeftOf)
    用它就可以将pBar放在pLeftOf的左边,至于MFC的我就不知道了