在CPropertySheet中添加CPropertyPage对象,有的用Create,有的用Construct,而有时不用。它们各有什么区别?我用Create创建CPropertyPage对象时,报错,提示“User breakpoint called from code at 0x77f813b1”之后程序就是终止了。而改用Construct就正常了。为什么?有什么区别吗?谢谢!

解决方案 »

  1.   

    创建CPropertyPage对象时,一般好想不能使用Create函数(继承于CDialog类)。
    可以这样使用:
    1、你创建了一个CPropertyPage扩展类(可以是向导生成的),这是你可以不用任何东西,只要声明就可以了。
    2、一般情况下,直接使用CPropertyPage构造函数声明一个CPropertyPage对象。
    3、特殊情况下,如果你需要做其他额外的初始化工作时,调用Construct函数。
      

  2.   

    我看有的程序(制作向导对话框),就用Create创建。例如:
    m_page1.Create(IDD_PAGE1,this);
    m_page2.Create(IDD_PAGE2,this);
    m_page3.Create(IDD_PAGE3,this);
    AddPage(&m_page1);
    AddPage(&m_page2);
    AddPage(&m_page3);可我的程序用Create创建就不行,用Construct就可以。