我从CDialog 继承下一个对话框CSuperDialog,写了几个普通函数在里面,然后我添加一Dialog,加几个控件,然后添加类,再把基类改成CSuperDialog,总是报OnInitDialog函数里初始化控件出错,请问,我改如何改,流程是这样吗?要注意些那些方面的问题?

解决方案 »

  1.   

    我的CSuperDialog我从CDialog 继承下来什么都没有改,就加了几个函数,然后我要从此CSuperDialog继承一个Dialog,总搞错,不知道要具体注意那些地方,请帮忙!
      

  2.   

    加继承对话框的头文件。
    #include "dialog.h"
      

  3.   

    可以发到我油箱:[email protected]
      

  4.   

    class CSuperDialog : public CDialog
    {}
    IMPLEMENT_DYNAMIC(CMessageDlg, CDialog)  //是否要改成CSuperDialog?
    CMessageDlg::CMessageDlg(CWnd* pParent /*=NULL*/)
    // : CDialog(CMessageDlg::IDD, pParent) //基类构造是否要调用
    {
    }
    void CMessageDlg::DoDataExchange(CDataExchange* pDX)
    {
    CDialog::DoDataExchange(pDX);  //数据交换,CDialog是否也要替换
             DDX_Control(pDX, IDC_NEIDTREE, m_neidtree);
    }
    BEGIN_MESSAGE_MAP(CMessageDlg, CDialog)  //是否也要换
    END_MESSAGE_MAP()
    BOOL CMessageDlg::OnInitDialog()
    {
    CDialog::OnInitDialog(); //是否也要换
    }
      

  5.   

    OnInitDialog函数报错,初始化控件出错