Simplest Checkable Groupbox

Environment: MFC

Brief—Simplest Checkable Groupbox Control

Often, we want to disable a set of controls in our dialog. A group box is a good control to categorise a few controls together, but unfortunately it cannot enable/disable its controls. I extended the CButton class and made it very simple to accomplish and it is encapsulated into one class.

So, you can change the title of a group box into a check box or radio button (then you need more group boxes, of course). I must confess I borrowed some ideas of other talented programmers.

How to Use It

  1. Draw a group box in the resource editor as usual.
  2. Add a member variable for this added group box, but choose CCheckableGroupBox as the control type.
  3. In OnInitDialog(), call m_yourVariable.SetTitleStyle(BS_AUTOCHECKBOX); to change the normal title to a check box, or use BS_AUTORADIOBUTTON for a radio box.
  4. If you want a group of group boxes toggled by radio box title, just create more Checkable group boxes as you already did, and call SetGroupID to give them a group!
  5. And that's ALL!

Ziming Wang
ziming.wang@spectel.com

Downloads

Download demo project - 35 Kb
Download source code - 3 Kb


Comments

  • Thanks

    Posted by Gene Sewell on 08/14/2012 12:25pm

    Thanks so much for this code. I decided I wanted this functionality - Google brought me to this link, and it just worked! Thanks for disabling everything when the checkbox is unchecked - perfect! Huzzah!

    Reply
  • Handle checkbox click

    Posted by dpreznik on 02/08/2011 11:33am

    Thank you very much for your solution, it is nice and helpful. Could you please tell me how one can handle click on the checkbox in your control? Thanks.

    Reply
  • How to create our own "font" in vc++

    Posted by rameshbabupeddapalli on 04/06/2007 07:37pm

    I have created a Combobox by dragging and drawing, i wrote a list of names the font is default. If i create the Combobox dynamically and add the list of names to combobox the font is different from the earlier (static) one.
          
            Please give me the solution to set the same font which is set by default at design (static) time.

    Reply
  • yes!

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

    Originally posted by: hiro

    What a useful your code is!
    in gui, we want a (check/radio)box+groupbox like you showed.
    thanks :)

    Reply
  • Cool

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

    Originally posted by: Jens Winslow

    Great idea.
    I often use this kind of enabeling / disabeling in my GUIs, and end up coding the disabeling by hand....now I wonder why I never thought to do a class to do it for me.

    Thanks for sharing this

    Jens

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

Top White Papers and Webcasts

  • Organizations are increasingly gravitating toward mobile-first application development as they assess the need to revamp their application portfolios to support touch computing and mobility. Consumerization has brought higher expectations for application usability along with the mobile devices themselves. Enterprises are increasingly shifting their new application acquisitions and development efforts toward mobile platforms. With this backdrop, it is natural to expect application platform vendors to invest in …

  • Cloud computing isn't new, but it's still a hot topic in technology circles. Moving to the cloud has done great things for many businesses. When it comes to handling a basic business necessity, cloud computing has brought many improvements to overall business continuity. Using the cloud for DR makes a lot of sense for many, but it's not exactly the most simple concept. Read this eBook to find answers to all the key questions IT professionals have about cloud-based disaster recovery, and helpful info around the …

Most Popular Programming Stories

More for Developers

RSS Feeds

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