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

  • There is no understating the impact of security and network connectivity on today's cloud environments. Yes, clouds can scale, expedite processing, and reduce costs, but they also incur risks associated with multi-tenancy, availability, and access control. How users connect to the cloud is vital because not only are security risks non-negotiable, but performance, flexibility, and reliability are critical as well, which leads to a heavy emphasis on combining strong security with private network ecosystems. …

  • While successful mobile apps can elevate and transform your brand, hidden deployment disasters can tear down all your hard work in the blink of an eye. Download this white paper to avoid disasters of: Scale Microdowntime and connectivity Location data Upfront costs

Most Popular Programming Stories

More for Developers

RSS Feeds

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