类组织是这样的:class ExtendTAB : public CTabCtrl
负责管理Tab属性页控件。
class SubList : public CDialog
是Tab页中的一个子对话框页面。
SubList::m_List
此子对话框上有ListCtrl控件,用于显示列表信息。
class MainDlg : public CDialog
主对话框类。现初始化List控件上列表项,不知道应该加在哪里?
如:m_AddrList.InsertColumn(0,_T("Name"));
因为SubList用对话框模版建立时没有OnInitDialog成员函数。初始化加在哪里好像编译器都会运行报错。请教大家!
谢谢!

解决方案 »

  1.   

    Ctrl+W 打开向导,在里面给你的对话框添加OnInitDialog函数
      

  2.   

    此子对话框上有ListCtrl控件,用于显示列表信息。
    =====================================================
    动态创建的?
    总之是这样Creat顺序,BASEDIALOG,TAB,DIALOG,CTRLLIST
      

  3.   

    OnInitDialog是可以加,但执行下面后还是列表没有效果。BOOL SubList::OnInitDialog()
    {
    CDialog::OnInitDialog();

    // TODO: Add extra initialization here m_AddrList.InsertColumn(0,_T("Name"));
    m_AddrList.InsertColumn(1,_T("Sex"));

    return TRUE;
    }
      

  4.   

    CString strHeader[2]={"Name","Sex"};
    int nLength[3]={100,120,100};
    for(int nCol=0;nCol<2;nCol++)
    m_AddrList.InsertColumn(nCol,(LPCTSTR)strHeader[nCol],LVCFMT_LEFT,nLength[nCol]);
      

  5.   


    BOOL SubList::OnInitDialog()
    {
    CDialog::OnInitDialog();

    // TODO: Add extra initialization here
             m_AddrList.SubclassDlgItem(IDCXXXXX,this);//加上这一句
    m_AddrList.InsertColumn(0,_T("Name"));
    m_AddrList.InsertColumn(1,_T("Sex"));

    return TRUE;
    }
      

  6.   

    先谢谢大家!加了 m_AddrList.SubclassDlgItem(IDC_WINTER_LIST,this);程序直接终止了。
      

  7.   

    我现在也遇到这个情况了,还没解决,也是在Tab control上创建的子页面上,又加了 List control 控件,但是没有初始化函数,我初始化里面的列的代码不知道加在哪了。
    等待高手
      

  8.   

    我也类似的添加了OnInitDialog函数,但是好象没有调用这个函数,不知道该怎么办了。
      

  9.   

    可以把一个已经写好的类 加到tab上  初始化再dialog对应的类中的OnInitialDialog函数中写