BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)
{
if( !CFrameWnd::PreCreateWindow(cs) )
return FALSE;
// TODO: 在此处通过修改
//  CREATESTRUCT cs 来修改窗口类或样式
CLogin  log;
if(log.DoModal()==IDOK)
{
if(log.m_UserName.IsEmpty())
AfxMessageBox(_T("用户名不能为空"));
else
return true;
}
else
return false;
}

解决方案 »

  1.   

    BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)
    {
    if( !CFrameWnd::PreCreateWindow(cs) )
    return FALSE;
    // TODO: 在此处通过修改
    //  CREATESTRUCT cs 来修改窗口类或样式
    CLogin  log;
    if(log.DoModal()==IDOK)
    {
      if(log.m_UserName.IsEmpty())
      {
        AfxMessageBox(_T("用户名不能为空"));
        return false;
      }
      else
         return true;
    }
    else
      return false;
    }
      

  2.   

    在主程序里面log.DoModal();并在 log这个对象的类里面 重载 onok()
    {
    if(this.m_UserName.IsEmpty()) 
    AfxMessageBox(_T("用户名不能为空")); 
    else 
    return true; 

    else 
    return false; 
    }
    }