我在MFC中,新建了一个对话框,这个对话框的类名是 CForm2 ,它的基类是 CRecordView ,而不是 CDialog因为我要在这个类中操作数据库m_pSet,所以才把它的基类定为 CRecordView现在我想在主界面中点击一下按钮弹出这个对话框:void CLibraryView::OnButton1() 
{
    CForm2 myForm;
    myForm.DoModal();
}但是上面这样不行,myForm没有DoModal这个成员函数,因为 CForm2 不是 CDialog 的派生类所以我想请教各位大虾,还有没有别的方法可以弹出这个新的对话框呢?谢谢!

解决方案 »

  1.   

    类似
    CLogInDlg *dlg;
    dlg = new CLogInDlg;
    dlg->Create(IDD_LOGIN_DLG,NULL);
    dlg->ShowWindow(SW_SHOW);
      

  2.   

    大哥,对话框能弹出来了,谢谢你。但是还有一个问题,我的代码是 void CLibraryView::OnButton1() 
    {
    CDialog *myForm;
    myForm=new CDialog;
    myForm->Create(IDD_FORM2,NULL);
    myForm->ShowWindow(SW_SHOW);
    }我想在对话框弹出后,对对话框进行初化始。我初始化的语句要写在哪个函数里面啊?是不是这个函数啊。void CForm2::OnInitialUpdate()但是我写在这个函数里面没反映。
      

  3.   

    Login *tt=new Login;
    tt->caonimama(IDD_LOGIN,"TMD");
    tt->ShowWindow(SW_SHOW);
    ///////////////////////////以下是caonimama函数,login是个dialog类bool Login::caonimama(UINT nIDTemplate, char * uinfo)
    {
    Create(nIDTemplate,NULL);
    strcpy(uname,uinfo);
    CString ttt;
    ttt.Format("%s",uname);
    SetDlgItemText(IDC_EDIT1,ttt);
    return true;
    }
      

  4.   

    char uname[256],是ligin类的数据成员