📄 borrowdlg.cpp
字号:
// BorrowDlg.cpp : implementation file
//
#include "stdafx.h"
#include "library.h"
#include "BorrowDlg.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CBorrowDlg dialog
CBorrowDlg::CBorrowDlg(CWnd* pParent /*=NULL*/)
: CDialog(CBorrowDlg::IDD, pParent)
{
//{{AFX_DATA_INIT(CBorrowDlg)
m_StuInf = _T("");
m_BookInf = _T("");
CanBook = 0;
CanStu = 0;
//}}AFX_DATA_INIT
}
void CBorrowDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CBorrowDlg)
DDX_Control(pDX, IDOK, m_OK);
DDX_Text(pDX, IDC_EDIT2, m_StuInf);
DDX_Text(pDX, IDC_EDIT1, m_BookInf);
DDV_MaxChars(pDX, m_BookInf, 10);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CBorrowDlg, CDialog)
//{{AFX_MSG_MAP(CBorrowDlg)
ON_EN_KILLFOCUS(IDC_EDIT1, OnKillfocusEdit1)
ON_EN_KILLFOCUS(IDC_EDIT2, OnKillfocusEdit2)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CBorrowDlg message handlers
void CBorrowDlg::OnKillfocusEdit1()
{
CString sqlStr;
UpdateData();
// TODO: Add your control notification handler code here
if(!m_BookInf.IsEmpty())
{
sqlStr.Format("SELECT * FROM BOOK WHERE BOOK_ID = %s",m_BookInf);
if(!BookDataSet.Open(AFX_DB_USE_DEFAULT_TYPE,sqlStr))
{
AfxMessageBox("打开图书表失败");
return;
}
if(BookDataSet.IsEOF())
{
GetDlgItem(IDC_EDIT4)->SetWindowText("");
GetDlgItem(IDC_EDIT5)->SetWindowText("");
GetDlgItem(IDC_EDIT6)->SetWindowText("");
GetDlgItem(IDC_EDIT7)->SetWindowText("");
GetDlgItem(IDC_EDIT14)->SetWindowText("");
GetDlgItem(IDC_EDIT14)->SetWindowText("");
BookDataSet.Close();
sqlStr="";
UpdateData(false);
return;
}
GetDlgItem(IDC_EDIT4)->SetWindowText(BookDataSet.m_BOOK_NAME);
GetDlgItem(IDC_EDIT5)->SetWindowText(BookDataSet.m_AUTHOR);
GetDlgItem(IDC_EDIT6)->SetWindowText(BookDataSet.m_PUB_HOUSE);
GetDlgItem(IDC_EDIT7)->SetWindowText(BookDataSet.m_INTRODUCTION);
if(BookDataSet.m_ISBORROW==1)
{
GetDlgItem(IDC_EDIT14)->SetWindowText("该书已被借出");
}
else if(BookDataSet.m_ISBOOK==1)
{
GetDlgItem(IDC_EDIT14)->SetWindowText("该书已被预约");
}
else
{
GetDlgItem(IDC_EDIT14)->SetWindowText("该书可出借");
CanBook = 1;
if(CanStu == 1&& CanBook == 1)//是否可借
{
m_OK.EnableWindow(true);
}
}
BookDataSet.Close();
sqlStr="";
UpdateData(false);
return;
}
else
{
GetDlgItem(IDC_EDIT4)->SetWindowText("");
GetDlgItem(IDC_EDIT5)->SetWindowText("");
GetDlgItem(IDC_EDIT6)->SetWindowText("");
GetDlgItem(IDC_EDIT7)->SetWindowText("");
GetDlgItem(IDC_EDIT14)->SetWindowText("");
}
}
void CBorrowDlg::OnKillfocusEdit2()
{
// TODO: Add your control notification handler code here
CString sqlStr;
UpdateData();
if(!m_StuInf.IsEmpty())
{
sqlStr.Format("SELECT * FROM READER WHERE READER_ID = '%s'",m_StuInf);
if(!ReadDataSet.Open(AFX_DB_USE_DEFAULT_TYPE,sqlStr))
{
AfxMessageBox("打开读者表失败");
return;
}
if(ReadDataSet.IsEOF())
{
GetDlgItem(IDC_EDIT8)->SetWindowText("");
GetDlgItem(IDC_EDIT9)->SetWindowText("");
GetDlgItem(IDC_EDIT10)->SetWindowText("");
GetDlgItem(IDC_EDIT11)->SetWindowText("");
GetDlgItem(IDC_EDIT12)->SetWindowText("");
ReadDataSet.Close();
sqlStr="";
UpdateData(false);
return;
}
else
{
GetDlgItem(IDC_EDIT8)->SetWindowText(ReadDataSet.m_READER_NAME);
CString temp;
temp.Format("%d",ReadDataSet.m_NUMBER);
GetDlgItem(IDC_EDIT10)->SetWindowText(temp);
temp.Format("%d",ReadDataSet.m_CUR_NUMBER);
GetDlgItem(IDC_EDIT11)->SetWindowText(temp);
temp.Format("%d",ReadDataSet.m_OVERDUE_NUMBER);
GetDlgItem(IDC_EDIT12)->SetWindowText(temp);
if(ReadDataSet.m_NUMBER>0 && ReadDataSet.m_OVERDUE_NUMBER==0)
{
CanStu = 1;
}
if(CanStu == 1&& CanBook == 1)
{
m_OK.EnableWindow(true);
}
ReadDataSet.Close();
sqlStr="";
UpdateData(false);
return;
}
}
else
{
GetDlgItem(IDC_EDIT4)->SetWindowText("");
GetDlgItem(IDC_EDIT5)->SetWindowText("");
GetDlgItem(IDC_EDIT6)->SetWindowText("");
GetDlgItem(IDC_EDIT7)->SetWindowText("");
GetDlgItem(IDC_EDIT14)->SetWindowText("");
}
}
void CBorrowDlg::OnOK()
{
// TODO: Add extra validation here
CString sqlStr;
sqlStr.Format("SELECT * FROM BOOK WHERE BOOK_ID = %s",m_BookInf);
BookDataSet.Open(AFX_DB_USE_DEFAULT_TYPE,sqlStr);
if(MessageBox("确认借阅此书",NULL,MB_OKCANCEL)==IDOK)
{
}
CDialog::OnOK();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -