DataMekanix Home Docking Windows Made Easy

home / CSizingControlBar / features


Current version: 2.45
Last updated: Apr 16, 2010

resizable control bars

by Cristi Posea

If you ever wondered how the ClassView, Output and other windows in Microsoft DevStudioTM were made, this section is for you. The functionality is somewhat like DevStudioTM's control bars. However, the look is not the same, as the main goal was to get an easy to use class...


  • Resizable control bar, that can be resized both when docked and when floating.

  • Multiple sizing control bars can be docked on the same row/column.

  • Full dynamic resizing, both when docked and floating, including diagonal resizing when floating.

  • State persistence support (SaveState/LoadState).

  • Gripper with "hide bar" flat button.

  • Memory DC flicker-less NC painting.

  • Sample extension class with focus auto-sensing text caption. On Win98/Win2k, the caption is painted with gradient.

  • No custom resources were used (bitmaps, cursors, strings, etc.), so the integration is easier and you have full control over the resources you eventually use in derived classes.

  • Easy to use: just derive your own control bar(s) from CSizingControlBar then add your child controls.

  • Optional Instant Resizing Bar mode - create the bar, then add a child control which will be automagically resized, without the need of a derived class for the bar.


VC++ 6.0, 2003-2010; MFC; Win32; UNICODE enabled


License information

The source code is Copyright (C) 1998-2010 Cristi Posea. All rights reserved.

This code is free for personal and commercial use, providing the copyright notice remains intact in the source files and all eventual changes are clearly marked with comments.

No warrantee of any kind, express or implied, is included with this software; use at your own risk, responsibility for damages (if any) to anyone resulting from the use of this software rests entirely with the user.

Download CSizingControlBar:

File name Description Version Size source code & samples 2.44 64k source code & samples 2.44 66k source code & samples 2.43 64k

Previous versions are available upon request.


  • Thanks to Harlan R. Seymour for his continuous support during development of this code.

  • Thanks to Dundas Software and Formatta Corporation for the opportunity to test this code on real-life applications.

  • Some ideas for the gripper came from the CToolBarEx flat toolbar by Joerg Koenig. Thanks, Joerg!

  • Thanks to Robert Wolpow for the CDockContext-based diagonal resizing code.

  • Thanks to the following people for various bug fixes and/or enhancements: Chris Maunder, Jakawan Ratiwanich, Udo Schaefer, Anatoly Ivasyuk, Peter Hauptmann, DJ(?), Pat Kusbel, Aleksey Malyshev.

Copyright 1998-2019 DataMekanix. All rights reserved.