我做了个简单的登录界面,可是不管输不输入用户名和密码都显示“用户名或密码为空,请重新输入!”我不知道要怎么改请高手帮帮!!!
void CMy123Dlg::OnButton1() 
{

CString user, password;
CDengLu m_Set;    
m_Set.Open();
    m_Set.MoveFirst();
   if(m_strUser.IsEmpty()||m_strPass.IsEmpty())
   {
   MessageBox("用户名或密码为空,请重新输入!");
   }
   else
   {
       while(!m_Set.IsEOF())
   {
             user = m_Set.m_column1 ;
 password = m_Set.m_column2;
if((m_strUser == user)&&(m_strPass == password))
{

MessageBox("登录成功!");
m_Set.Close();
  break;
}
else
{
m_Set.MoveNext();
}   
   }

   }

}

解决方案 »

  1.   

    谢谢高手一语点破。不过现在又有新问题了,我输入正确以后怎么还会跳出来说密码输入错误呢= =下面是改过以后的代码麻烦再指点下谢谢!
    void CMy123Dlg::OnButton1() 
    {
    bool SEX = true;
    CString user, password;
    CDengLu m_Set; 
    m_Set.Open();
        m_Set.MoveFirst();
    UpdateData();
       if(m_strUser.IsEmpty()||m_strPass.IsEmpty())
       {
       MessageBox("用户名或密码为空,请重新输入!");
       }
       else
       {
           while(!m_Set.IsEOF())
       {
                 user = m_Set.m_column1 ;
     password = m_Set.m_column2;
    if((m_strUser == user)&&(m_strPass == password))
    {
    bool SEX = false;
    MessageBox("登录成功!");
    m_Set.Close();
    CDialog::OnOK();
    Cmm dlg;
    dlg.DoModal();
    break;
    }
    else
    {
    m_Set.MoveNext();
    }   
       }
    if(SEX)
    {
                MessageBox("密码错误,请重新输入!");
    m_strPass="";
    m_ctrPass.SetFocus();
    UpdateData(FALSE);
    }
       }

    }
      

  2.   

    额原来是那里出错了郁闷多加了个bool
      

  3.   

    其中赋值有问题,在你寻找的过程中,你为什么要不停地把SEX变量赋值为false呢?重复定义是一个错误不提。你应该在一开始将其赋值为false,如果密码和用户名匹配,将其赋值为true;