点击主对话框的某按钮,会先收到一串数据,假设解析后得到1、2、3、4、5,然后弹出一个模态对话框,我想把上面得到的数据(即1、2、3、4、5)分别写入到新对话框的ListBox控件的5行中,应该怎么做呢?

解决方案 »

  1.   

    先设计一个对话框,上面放一个listbox设计一个类关联到对话框资源需要用它的时候就domodal把它弹出来呗。你想访问listbox就是对话框的指针访问
      

  2.   

    两种方法:
    1、在新的弹出对话框中定义一个结构体或是变量,在调用DoModel()之前就吧值赋值过去
    2、通过消息传递过去也可以
      

  3.   

    假设你解析的值放在stl集合里面,list\Vector等都行,如果Vector m_Vector;CDlgAfter dlg   //假设这个对话框是被传的那个对话框
    dlg.SetDateArray(m_Vector);  传给被传的那个对话框BOOL CDlgAfter::OnInitDialog()
    {
        //此时取出集合里面的数据,然后填充到控件里面
         
    }
      

  4.   

    DoModal()产生模态对话框,好像在这个函数前不能把值赋过去吧?我试过了会出错,非模态对话框倒是可以,但是我需要弹出子对话框后,父对话框不能再进行操作,只显示界面,应该怎么做呢?
      

  5.   

    vector.add(1);
    vector.add(2);
    vector.add(3);
    CMyDialog dlg; //CMyDialog里有个成员变量m_vecData;
    dlg.SetDateArray(vector);//自己实现这个函数,把vector里的值填到m_vecData里去;
    dlg.domodal();BOOL CMyDialog::OnInitDialog()
    {
    CDialog::OnInitDialog()
    //实现m_vecData里的值设到list里去。
    return TRUE;
    }