Docking Toolbars Side-By-Side

If you are interested in more articles written by Kirk Stowell, you can click here to visit his home page.

There are several articles about docking toolbars, however, I felt that this was important enough to mention here. The same information can be found at Microsofts MSDN site, here it is in a nutshell:

Add the following method to your CMainFrame class:

void CMainFrame::DockControlBarLeftOf(CToolBar* Bar, CToolBar* LeftOf)
	CRect rect;
	DWORD dw;
	UINT n;
	// get MFC to adjust the dimensions of all docked ToolBars
	// so that GetWindowRect will be accurate
	n = 0;
	n = (dw&CBRS_ALIGN_LEFT && n==0) ? AFX_IDW_DOCKBAR_LEFT : n;
	// When we take the default parameters on rect, DockControlBar will dock
	// each Toolbar on a seperate line. By calculating a rectangle, we
	// are simulating a Toolbar being dragged to that location and docked.

Now, in your CMainFrame::OnCreate, instead of using DockControlBar, use DockControlBarLeftOf:


This will dock m_wndToolBar2 left of m_wndToolBar1.

Download demo project - (29 KB)

Last updated December 21, 1998


  • Docking side by side in the mdi child?

    Posted by rioch on 06/22/2009 11:01am

    I cannot get this to work for the mdichild frame. Is it possible to get the toolbars side by side there as well?

  • Docking toolbars in more than one row

    Posted by Laurs on 06/10/2005 08:48am

    It looks that MFC has problems when you try to drag toolbars to posaition them after each other, when there is more than one row. Has anybody a solution?


    Posted by Legacy on 08/29/2003 12:00am

    Originally posted by: The Best GUI Tools - VS.NET and Office XP/2003 Look!

  • Wonderful!

    Posted by Legacy on 07/18/2003 12:00am

    Originally posted by: HS

    Just what I was looking for!!

  • Thanks A Lot

    Posted by Legacy on 06/29/2003 12:00am

    Originally posted by: Snakebyte

    I spent more than an hour looking for some toolbar property/method which could do the same In MSDN

    This is exactly what I wanted to do.
    Thanks a lot

  • TreeCtrl intoa a dockable Toolbar?

    Posted by Legacy on 02/11/2003 12:00am

    Originally posted by: Manuel

    How can I get into a ToolBar (dockable and resizable) a TreeCtrl

  • How to dock a toolbar at right side?

    Posted by Legacy on 12/23/2002 12:00am

    Originally posted by: xianbin zheng

    When create a toolbar and dock at top or bottom, it will align at left defaultly. But what can I do to dock it align right.

  • How about three and more toolbars???

    Posted by Legacy on 06/05/2002 12:00am

    Originally posted by: writeus

    While I add three toolbars,It's work wrong!!

    How can I do???


  • Perfect ! ! !

    Posted by Legacy on 04/24/2002 12:00am

    Originally posted by: Johnn J

    Just what i was looking for!

  • That seems be good !

    Posted by Legacy on 03/28/2002 12:00am

    Originally posted by: BBBKOM

    You are so creative!

  • Loading, Please Wait ...

  • You must have javascript enabled in order to post comments.

Leave a Comment
  • Your email address will not be published. All fields are required.

Top White Papers and Webcasts

  • Moving from an on-premises environment to Office 365 does not remove the need to plan for disruptions or reduce the business risk requirements for protecting email services. If anything, some risks increase with a move to the cloud. Read how to ease the transition every business faces if considering or already migrating to cloud email. This white paper discusses: Setting expectations when migrating to Office 365 Understanding the implications of relying solely on Exchange Online security Necessary archiving …

  • Enterprises are increasingly looking to platform as a service (PaaS) to lower their costs and speed their time to market for new applications. Developing, deploying, and managing applications in the cloud eliminates the time and expense of managing a physical infrastructure to support them. PaaS offerings must deliver additional long-term benefits, such as a lower total cost of ownership (TCO), rapid scalability, and ease of integration, all while providing robust security and availability. This report …

Most Popular Programming Stories

More for Developers

RSS Feeds

Thanks for your registration, follow us on our social networks to keep up-to-date