我有一个对话框1,其上有CListCtrl控件,关联变量m_listctrl,还有一个按扭增加,如何实现点击按扭,打开一个自定义的对话框2的对象,对话框2上有Edit控件,输入信息后,如何将该输入值插入到对话框1的列表中?

解决方案 »

  1.   

    另外加一个问题,如何动态显示对话矿的标题?就是我自定义了一个对话框类,我点击不同的按扭时弹出同一个对话框,但是标题却不一样,该怎么写?为什么我用 CMyDialog dlg;
    dlg.SetWindowText("添加窗口");会弹出错误对话框,而用this->SetWindowText("添加窗口"); 也加不上窗口标题.
      

  2.   

    CMyDialog dlg;
    dlg.SetWindowText("添加窗口");
    ------------------------------
    对话框的窗口还没有生成,所以会出错.在对话框1里
     CDLG2 dlg2;
     if(dlg2.DoModal==YOUR_BTN_ID){
        a=dlg2.a
        b=dlg2.b;
    }然后插入列表框假设为list;
     list.InsertItem(row,"result");
     list.SetItemText(row,1,a);
     list.SetITemText(row,2,b);
    相信你会明白.
      

  3.   

    //自己定义的消息   
      #define   WM_MYMESS WM_USER   +   101
    //定义消息处理函数   
      afx_msg   LRESULT   OnMyMess(WPARAM   wParam,   LPARAM   lParam);   
        
      BEGIN_MESSAGE_MAP(CAboutDlg,   CDialog)   
      //{{AFX_MSG_MAP(CAboutDlg)   
      //}}AFX_MSG_MAP   
      //消息处理过程手动加入消息映射表   
      ON_MESSAGE(WM_MYMESS,   OnMyMess)   
      END_MESSAGE_MAP()   
    //对话框处理消息   
      LRESULT   CAboutDlg::OnMyMess(WPARAM   wParam,   LPARAM   lParam)   
      {   
      AfxMessageBox("I   Get   this   Message.");   
      return   0;   
      } 
    其中第二个参数LPARAM   lParam可用来传递所需的变量CEdit.GetText();
    lParam(CEdit.GetText());CEDIT输入信息后,PostMessage(主对话框句炳,0,lParam(CEdit.GetText()));
    主对话框接受到消息后执行OnMyMess函数。。在OnMyMess函数里面可以处理你想要的东西。。
    具体你可以上网搜搜这方面的资料。。