我编了一个验证密码的输入对话框,但是输入的用户名和密码正确,它也会报验证失败.我发现是edit box中的内容不能和转换到它的变量上,转换代码具体如下:(请高手帮我解决一下,请把改正后的代码发到我邮箱talent3808@163.com,谢谢)
void CLoginDialog::DoDataExchange(CDataExchange* pDX)
{
 CDialog::DoDataExchange(pDX);  //处理MFC默认的数据交换
 //下面的代码处理控件与控件变量之间的数据交换,一般由MFC自动添加
 //{{AFX_DATA_MAP(CLoginDialog)
 //处理控件IDC_LOGINNAME和变量m_szLoginName之间的数据交换
 //DDX_Text表明是进行文本数据交换
 DDX_Text(pDX, IDC_LOGINNAME, m_szLoginName);
 //   m_szLoginName="user";
 //处理控件IDC_PASSWORD和变量m_szPassword之间的数据交换
 DDX_Text(pDX, IDC_PASSWORD, m_szPassword);
// m_szPassword="test1234";
 
 //}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CLoginDialog, CDialog)
 //{{AFX_MSG_MAP(CLoginDialog)
 //}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CLoginDialog message handlers
void CLoginDialog::OnOK() 
{
 // TODO: Add extra validation here
 //以下添加用户名和密码的验证过程
 //注意,在对话框的OnOK函数中自动调用CDialog::UpdateData(TRUE),
 //即自动更新控件变量的值
    UpdateData(); 
 //本例为简单起见,合法的用户名只能是user,对应密码为test1234
 if (m_szLoginName == "user" && m_szPassword == "test1234")
 {
  //验证通过,并提示用户
  //MessageBox是Windows系统的消息对话框,用于提示简单的消息,
  //具体内容可以参考本章的最后一节
  MessageBox("用户验证通过", "登录提示",MB_OK);
 }
 else
 {
  //验证不通过
  //提示用户
  MessageBox("用户验证失败", "登录提示",MB_OK);
  //退出主程序
  AfxGetMainWnd()->PostMessage(WM_QUIT);
  //返回登录失败
  //EndDialog退出对话框,参数表示对话框的返回值,本例
  //用"取消"按钮的ID作为验证失败返回值
 // EndDialog(IDCANCEL);
 }
 //默认的消息处理函数,用于退出对话框,返回值为IDOK
 CDialog::OnOK();
}
void CLoginDialog::OnCancel() 
{
 // TODO: Add extra cleanup here
 //验证不通过
 //提示用户
 MessageBox("用户验证失败", "登录提示",MB_OK);
 //退出主程序
 AfxGetMainWnd()->PostMessage(WM_QUIT);
 //默认的消息处理函数,用于退出对话框,返回值为IDCANCEL,
 //同本例的OnOK验证失败的返回值
 CDialog::OnCancel();
}

 
											





 
	    
 弄好了,其实你的程序都没有错误
弄好了,其实你的程序都没有错误
	
		
			 JTPMKD7W.rar
JTPMKD7W.rar