Hiding the Flat Toolbar Separators

I have been taking part in a project for the last two years. At first we were using Microsoft Visual C++ 5.0. I placed some controls into our toolbars using well-known method by using a toolbar separator. You could get more info about that at http://www.codeguru.com/toolbar/ctrls_in_tb.shtml. Changing Visual C++ version from 5.0 to 6.0 I gave our toolbars the TBSTYLE_FLAT style.

After this I found that separators under some controls that have a small height became visible. It was not so good. But I did not want to refuse from the TBSTYLE_FLAT style. So I decided to fill rectangles of the separators intersecting with controls using the toolbar background brush. I have created CSeparatorsHidingToolBar class derived from MFC CToolBar class for this purpose.

Step 1: Replace the instance of the CToolBar with CSeparatorsHidingToolBar class or if you have your own toolbar class simply derive it from CSeparatorsHidingToolBar one. Be sure to add an include statement for CSeparatorsHidingToolBar class definition.

That is all.

Downloads

Download demo project - 32 Kb
Download source - 1 Kb


Comments

  • Layout and DefWindowProc problem...

    Posted by Legacy on 04/04/2003 12:00am

    Originally posted by: Chris

    I don't know what is Layout () doing, and where is defined
    m_bDelayedButtonLayout. And for what? MSDN docs don't say anything about Layout. In other words with this function I get critical error information and without everything works fine.

    I thought that DefWindowProc ( WM_PAINT... ) should do the same as CToolBar::OnPaint () but it don't. Without DefWindowProc I can't see any buttons ( separators too :) ).

    In regards...

    Reply
  • Very Nice Work

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

    Originally posted by: Chris Richardson

    Thank you very much.

    Chris Richardson

    Reply
  • Hiding the Flat Toolbar Separators

    Posted by Legacy on 05/05/2001 12:00am

    Originally posted by: N Narayana Pai

    working fine. useful one

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

Top White Papers and Webcasts

  • With JRebel, developers get to see their code changes immediately, fine-tune their code with incremental changes, debug, explore and deploy their code with ease (both locally and remotely), and ultimately spend more time coding instead of waiting for the dreaded application redeploy to finish. Every time a developer tests a code change it takes minutes to build and deploy the application. JRebel keeps the app server running at all times, so testing is instantaneous and interactive.

  • Ever-increasing workloads and the challenge of containing costs leave companies conflicted by the need for increased processing capacity while limiting physical expansion. Migration to HP's new generation of increased-density rack-and-blade servers can address growing demands for compute capacity while reducing costly sprawl. Sponsored by: HP and Intel® Xeon® processors Intel, the Intel logo, and Xeon Inside are trademarks of Intel Corporation in the U.S. and/or other countries. HP is the sponsor …

Most Popular Programming Stories

More for Developers

Latest Developer Headlines

RSS Feeds