dcsimg
October 18, 2018
Hot Topics:

Child Property Sheet

  • February 16, 2000
  • By Torbin Haagh
  • Send Email »
  • More Articles »


Environment: Windows NT4 SP6, Visual C++ 6 SP3

Having a property sheet inside a property page causes some problems:

  • Child CPropertySheet hangs if focus is switched (Q149501).
  • Parent property sheet terminates even if a child page has a Data Exchange failure.
  • OK, Cancel, and QuerySibling messages are not transferred to child sheets.
  • Child sheet has to be created and sized manually.
  • The class CChildPropertyPage derived from CPropertyPage solves the above problems. To use a child property sheet you simply use this class instead of CPropertyPage to implement your resource. You add the child pages in the same way as you would add pages to a normal property sheet. See the demo project.

    The example project implements the above example. It shows how to use the child property sheet on a full page and limited by a group box. The example is simply created with the following statements:

    CPropertySheet dlg("Test");
    
    CChildPropertyPage Page1(IDD_PROPPAGE1);
    CChildPropertyPage Page2(IDD_PROPPAGE1,0,0,IDC_GROUP);
    CPropertyPage Page11(IDD_PROPPAGE2);
    CPropertyPage Page12(IDD_PROPPAGE2);
    CPropertyPage Page21(IDD_PROPPAGE3);
    CPropertyPage Page22(IDD_PROPPAGE3);
    
    dlg.AddPage(&Page1);
    dlg.AddPage(&Page2);
    Page1.AddPage(&Page11);
    Page1.AddPage(&Page12);
    Page2.AddPage(&Page21);
    Page2.AddPage(&Page22);
    

    The CChildPropertyPage constructor takes four arguments:

  • ID of the template used for the page.
  • ID of the name to be placed in the tab for the page. If 0, the name will be taken from the dialog template for this page. Default is 0.
  • The index of the page that will initially be on top. Default is the first page added to the sheet, page 0
  • ID of control in which the child property sheet has to fit. If 0, then the child property sheet fills the entire page. Default is 0.
  • Downloads

    Download demo project - 6 Kb
    Download source - 2 Kb






    Comment and Contribute

     


    (Maximum characters: 1200). You have characters left.

     

     


    Enterprise Development Update

    Don't miss an article. Subscribe to our newsletter below.

    By submitting your information, you agree that developer.com may send you developer offers via email, phone and text message, as well as email offers about other products and services that developer believes may be of interest to you. developer will process your information in accordance with the Quinstreet Privacy Policy.

    Sitemap

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