登录示例MFC



这是一个非常简单的任务。我只想从用户那里得到用户名和密码。如果用户名是admin,密码是password,那么点击ok按钮应该调用下一个对话框。如果用户名和密码是其他东西,那么应该出现一个消息框,说无效登录。我的问题是,即使我给用户名作为管理员和密码作为密码,我得到无效的登录消息框。这是我的代码。

void CUserLoginDlg::OnBnClickedOk()
{
CString uname="admin";
CString pwd="password";
if(m_Username== uname|| m_Password==pwd)
{   
    CDisk Dlg;
    Dlg.DoModal();
}
else
{
    AfxMessageBox("Invalid Login");
}
}

即使我提供登录凭据作为admin和password,我也会得到Messagebox。我不知道如何解决这个问题。

更正后的版本:

void CUserLoginDlg::OnBnClickedOk()
{
  UpdateData();  // updates m_Username and m_Password
  CString uname="admin";
  CString pwd="password";
  if (m_Username == uname && m_Password == pwd)
  {                   // ^ replaced || by &&
     CDisk Dlg;
     Dlg.DoModal();
   }
   else
   {
     AfxMessageBox("Invalid Login");
   }
}

必须在函数开始时调用UpdataData。

你的测试m_Username == uname || m_Password == pwd是错误的。

相关内容

  • 没有找到相关文章

最新更新