⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 logindlg.cpp

📁 简单的图书管理系统
💻 CPP
字号:
// LoginDlg.cpp : implementation file
//

#include "stdafx.h"
#include "book.h"
#include "LoginDlg.h"

#include "ReaderDlg.h"
#include "BookDlg.h"

#include "InBookDlg.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CLoginDlg dialog


CLoginDlg::CLoginDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CLoginDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CLoginDlg)
	m_pName = _T("xingpan");
	m_pPassWord = 9464;
	//}}AFX_DATA_INIT
}


void CLoginDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CLoginDlg)
	DDX_Control(pDX, IDC_Login, m_Login);
	DDX_Text(pDX, IDC_Name, m_pName);
	DDX_Text(pDX, IDC_PassWord, m_pPassWord);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CLoginDlg, CDialog)
	//{{AFX_MSG_MAP(CLoginDlg)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CLoginDlg message handlers

/*函数功能:实现借阅者和图书管理员的登陆,并让他们进入不同的界面进行
操作如果是借阅者则跳到借阅者的使用界面,如果是图书管理员则跳到图书管
理员的界面*/
void CLoginDlg::OnOK() 
{
	// TODO: Add extra validation here
	CString m_Data;					//作为从选择框中得到的数据的临时变量
	BOOL flag=0;					//作为判断是否输入用户名和密码的标志,用来看是否关闭对话框
	BOOL sign=0;					//作为判断是否有该用户的标志

	this->UpdateData();				//得到对话框中的数据

	if(m_pName == "")				//判断是否输入用户名,如果没有输出提示
	{
		::AfxMessageBox("请输入用户名");
		flag=1;
	}
	if(m_pPassWord == 0)			//判断是否输入密码,如果没有输出提示
	{
		::AfxMessageBox("请输入密码");
		flag=1;
	}

	m_pManageSet.Open();			//打开管理者登陆资料数据库
	m_pReaderSet.Open();			//打开借阅者资料数据库
	
	if(flag==0)
		m_Login.GetLBText(m_Login.GetCurSel(),m_Data);	//将选择框中的数据读出并放入临时寄存器

	if(m_Data=="借阅者"&&flag==0)			
	{	//如果登陆者为借阅者,判断用户名密码是否正确,是则跳转到借阅者操作画面
		while(!m_pReaderSet.IsEOF())	//如果指针没有指空
		{
			if(m_pReaderSet.m_Name == m_pName)	//如果用户名输入正确
			{
				if(m_pReaderSet.m_PassWord == m_pPassWord)	//如果密码输入正确
				{
					CDialog::OnOK();
					CReaderDlg dlg;		//打开借阅者操作界面
					dlg.DoModal();
					sign=1;				//找到所查的用户名和密码
					break;
				}
			}
			else
			{
				m_pReaderSet.MoveNext();	//移向下一个记录
				sign=0;						//没有找到所查的用户名和密码
			}
		}
		if(sign==0)
			::AfxMessageBox("输入用户名或密码错误");
	}

	if(m_Data=="图书馆管理员"&&flag==0)	
	{	//如果登陆者为图书馆管理员,判断用户名密码是否正确,跳转到管理员操作画面
		while(!m_pManageSet.IsEOF())	//如果指针没有指空
		{
			if(m_pManageSet.m_Name == m_pName)	//如果用户名输入正确
			{
				if(m_pManageSet.m_PassWord == m_pPassWord)	//如果密码输入正确
				{
					CDialog::OnOK();
					CInBookDlg dlg;		//打开管理员操作界面
					dlg.DoModal();
					sign=1;				//找到所查的用户名和密码
					break;
				}
			}
			else
			{
				m_pManageSet.MoveNext();	//移向下一个记录
				sign=0;						//没有找到所查的用户名和密码
			}
		}
		if(sign==0)
			::AfxMessageBox("输入用户名或密码错误");
	}

	m_pManageSet.Close();			//关闭管理者登陆资料数据库
	m_pReaderSet.Close();			//关闭借阅者登陆资料数据库
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -