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

  • Packaged application development teams frequently operate with limited testing environments due to time and labor constraints. By virtualizing the entire application stack, packaged application development teams can deliver business results faster, at higher quality, and with lower risk.

  • Do you know where your data is? Consumer cloud-based file sharing services store your sensitive company data on servers outside of your control, outside of your policy and regulatory guidelines – maybe even outside your country – and not managed by you. The potential for data leakage, security breaches, and harm to your business is enormous. Download this white paper to learn about file sync and share alternatives that allow you to manage and protect your sensitive data while integrating and …

Most Popular Programming Stories

More for Developers

Latest Developer Headlines

RSS Feeds