让工具栏并列显示 望月 2001年 43期 假设在Windows程序窗口中有几个工具栏,现在我们希望让这些工具栏并列显示,该怎样实现呢?在这里,我们可以使用下面的函数来实现该功能,此函数是从CJ60Lib函数库弄下来的。笔者在下面的程序中实现的功能是:让LeftOf工具栏显示在Bar工具栏的左侧,同时还要并列显示在一起。下面就是在VC++中实现其功能的主要代码:   void CCJMDIFrameWnd::DockControlBarLeftOf(CControlBar*Bar,   CControlBar*LeftOf)   {   CRect rect;   DWORD dw;   UINT n;   //使用MFC来调整所有工具栏的尺寸   //确保GetWindowRec准确   RecalcLayout(TRUE);   LeftOf->GetWindowRect(&rect);   rect.OffsetRect(1,0);   dw=LeftOf->GetBarStyle();   n = 0;   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);   }   