// LoginDLG.cpp : 实现文件
//#include "stdafx.h"
#include "kuncunxinxiguanl.h"
#include "LoginDLG.h"
#include "afxdialogex.h"
#include "Users.h"
#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif#if !defined(AFX_CLIENT_H__C210C883_216F_4A4E_BB2F_F034570AA92F__INCLUDED_)
#define AFX_CLIENT_H__C210C883_216F_4A4E_BB2F_F034570AA92F__INCLUDED_#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// CLoginDLG 对话框IMPLEMENT_DYNAMIC(CLoginDLG, CDialogEx)CLoginDLG::CLoginDLG(CWnd* pParent /*=NULL*/)
: CDialogEx(CLoginDLG::IDD, pParent)
{ m_UserName = _T("");
m_Pwd = _T("");
}CLoginDLG::~CLoginDLG()
{
}void CLoginDLG::DoDataExchange(CDataExchange* pDX)
{
CDialogEx::DoDataExchange(pDX);
DDX_Text(pDX, IDC_USERNAME_EDIT, m_UserName);
DDX_Text(pDX, IDC_PWD_EDIT, m_Pwd);
}
BEGIN_MESSAGE_MAP(CLoginDLG, CDialogEx)
ON_BN_CLICKED(IDOK, &CLoginDLG::OnBnClickedOk)
END_MESSAGE_MAP()
// CLoginDLG 消息处理程序
void CLoginDLG::OnBnClickedOk()
{
// TODO: 在此添加控件通知处理程序代码
UpdateData(true);
//检查数据有效性
if(m_UserName=="")
{
MessageBox(_T("请输入用户名"));
return;
}
if(m_Pwd=="")
{
MessageBox(_T("请输入密码"));
return;
} //定义cusers对象,用于从表users中读取数据
CUsers user;
user.GetData(m_UserName);
//如果读取的数据与用户输入的数据不同则返回
if(user.GetData( ) !=m_Pwd)
{
MessageBox(_T("用户信息部正确请重新输入"));
} CDialogEx::OnOK();
}
BOOL CLoginDLG::OnInitDialog()
{
CDialogEx::OnInitDialog(); // TODO:  在此添加额外的初始化 return TRUE;  // return TRUE unless you set the focus to a control
// 异常: OCX 属性页应返回 FALSE
}
#endif

解决方案 »

  1.   

    此处GetData参数为空,检查下该函数定义,是否允许参数为空。
      

  2.   

    CUsers user;
    user.GetData(m_UserName);
    //如果读取的数据与用户输入的数据不同则返回
    if(user.GetData( ) !=m_Pwd)
    {
    MessageBox(_T("用户信息部正确请重新输入"));
    }CDialogEx::OnOK();
    }GetData接受一个参数,不知道有没有重载,或者你给接受一个参数的GetData指定一个默认参数
      

  3.   

    //定义cusers对象,用于从表users中读取数据
    CUsers user;
    user.GetData(m_UserName);
    //如果读取的数据与用户输入的数据不同则返回
    if(user.GetData( ) !=m_Pwd)
    {
    MessageBox(_T("用户信息部正确请重新输入"));
    }
    这里需要输入参数