📄 modifyb.cpp
字号:
// Modifyb.cpp : implementation file
//
#include "stdafx.h"
#include "library.h"
#include "Modifyb.h"
#include "BookSet.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CModifyb dialog
extern CDatabase db;
CModifyb::CModifyb(CWnd* pParent /*=NULL*/)
: CDialog(CModifyb::IDD, pParent)
{
//{{AFX_DATA_INIT(CModifyb)
m_year = _T("");
m_publish = _T("");
m_no = _T("");
m_name = _T("");
m_month = _T("");
m_day = _T("");
m_author = _T("");
//}}AFX_DATA_INIT
}
void CModifyb::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CModifyb)
DDX_Control(pDX, IDC_COMBO, m_state);
DDX_Text(pDX, IDC_EDIT_BMY, m_year);
DDV_MaxChars(pDX, m_year, 4);
DDX_Text(pDX, IDC_EDIT_BMPUBLISH, m_publish);
DDV_MaxChars(pDX, m_publish, 40);
DDX_Text(pDX, IDC_EDIT_BMNO, m_no);
DDV_MaxChars(pDX, m_no, 10);
DDX_Text(pDX, IDC_EDIT_BMNAME, m_name);
DDV_MaxChars(pDX, m_name, 40);
DDX_Text(pDX, IDC_EDIT_BMM, m_month);
DDV_MaxChars(pDX, m_month, 2);
DDX_Text(pDX, IDC_EDIT_BMD, m_day);
DDV_MaxChars(pDX, m_day, 2);
DDX_Text(pDX, IDC_EDIT_BMAUTHOR, m_author);
DDV_MaxChars(pDX, m_author, 40);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CModifyb, CDialog)
//{{AFX_MSG_MAP(CModifyb)
ON_WM_CANCELMODE()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CModifyb message handlers
void CModifyb::OnOK()
{
// TODO: Add extra validation here
UpdateData();
CBookSet *book=new CBookSet(&db);
book->Open();
if(m_author.IsEmpty() || m_day.IsEmpty() ||m_month.IsEmpty()||m_name.IsEmpty()||m_no.IsEmpty()||m_publish.IsEmpty()||m_year.IsEmpty())
{
MessageBox("各项记录不能为空!");
return;
}
book->MoveFirst();
book->m_BookNo.TrimRight();
if(temp!=book->m_BookNo)
{
book->MoveNext();
book->m_BookNo.TrimRight();
while(!book->IsEOF() && temp!=book->m_BookNo)
{
book->MoveNext();
book->m_BookNo.TrimRight();
}
}
book->Edit();
book->m_Author=m_author;
book->m_BookNo=m_no;
book->m_Name=m_name;
book->m_PublishingHouse=m_publish;
CString date;
if(m_month.GetLength()==1)
m_month="0"+m_month;
if(m_day.GetLength()==1)
m_day="0"+m_day;
if(m_year.GetLength()<4)
{
MessageBox("出版年月填写错误!");
return;
}
date=m_year+"/"+m_month+"/"+m_day;
book->m_PublishingDate=date;
int index=m_state.GetCurSel();
if(index==0) book->m_State="丢失";
else if(index==1) book->m_State="借出";
else book->m_State="在馆";
book->Update();
book->Close();
pview->RefreshBookList();
MessageBox("修改成功!");
CDialog::OnOK();
}
BOOL CModifyb::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: Add extra initialization here
int row=pview->m_bookmanage.GetSelectionMark();
CString num;
num=pview->m_bookmanage.GetItemText(row,0);
CBookSet *book=new CBookSet(&db);
book->Open();
book->MoveFirst();
book->m_BookNo.TrimRight();
if(num!=book->m_BookNo)
{
book->MoveNext();
book->m_BookNo.TrimRight();
while(!book->IsEOF() && num!=book->m_BookNo)
{
book->MoveNext();
book->m_BookNo.TrimRight();
}
}
temp=book->m_BookNo;
m_name=book->m_Name;
m_author=book->m_Author;
m_no=book->m_BookNo;
m_publish=book->m_PublishingHouse;
CString m_y,m_m,m_d;
m_y=book->m_PublishingDate.Left(4);
m_m=book->m_PublishingDate.Mid(5,2);
m_d=book->m_PublishingDate.Mid(8,2);
m_month=m_m;
m_year=m_y;
m_day=m_d;
book->m_State.TrimRight();
int comboindex;
if(book->m_State=="在馆")
comboindex=2;
else if(book->m_State=="借出")
comboindex=1;
else comboindex=0;
m_state.SetCurSel(comboindex);
UpdateData(FALSE);
book->Close();
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CModifyb::OnCancelMode()
{
CDialog::OnCancelMode();
// TODO: Add your message handler code here
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -