📄 searchbook.cpp
字号:
// SearchBook.cpp : implementation file
//
#include "stdafx.h"
#include "resource.h"
#include "SearchBook.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CSearchBook dialog
CSearchBook::CSearchBook(CWnd* pParent /*=NULL*/)
: CDialog(CSearchBook::IDD, pParent)
{
//{{AFX_DATA_INIT(CSearchBook)
m_SBedit = _T("");
m_SBcom = 0;
//}}AFX_DATA_INIT
}
void CSearchBook::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CSearchBook)
DDX_Control(pDX, IDC_SEARCHBOOKLIST, m_SBList);
DDX_Text(pDX, IDC_SEARCHBOOKEDIT, m_SBedit);
DDX_CBIndex(pDX, IDC_SEARCHBOOKCOM, m_SBcom);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CSearchBook, CDialog)
//{{AFX_MSG_MAP(CSearchBook)
ON_BN_CLICKED(IDC_SEARCHBOOKBT, OnSearchbookbt)
ON_CBN_DROPDOWN(IDC_SEARCHBOOKCOM, OnDropdownSearchbookcom)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CSearchBook message handlers
CSearchBook::OnInitDialog()
{
CDialog::OnInitDialog();
m_SBList.SetExtendedStyle(LVS_EX_GRIDLINES|LVS_EX_FULLROWSELECT);
m_SBList.InsertColumn(0,_T("ISBN"),LVCFMT_CENTER,100);
m_SBList.InsertColumn(1,_T("书名"),LVCFMT_CENTER,180);
m_SBList.InsertColumn(2,_T("作者"),LVCFMT_CENTER,80);
m_SBList.InsertColumn(3,_T("类别"),LVCFMT_CENTER,80);
m_SBList.InsertColumn(4,_T("出版社"),LVCFMT_CENTER,140);
m_SBList.InsertColumn(5,_T("出版日期"),LVCFMT_CENTER,100);
m_SBList.InsertColumn(6,_T("版本"),LVCFMT_CENTER,60);
m_SBList.InsertColumn(7,_T("册数"),LVCFMT_CENTER,60);
m_SBList.InsertColumn(8,_T("页数"),LVCFMT_CENTER,60);
m_SBList.InsertColumn(9,_T("价格"),LVCFMT_CENTER,60);
m_SBList.InsertColumn(10,_T("库存"),LVCFMT_CENTER,60);
return TRUE;
}
void CSearchBook::OnSearchbookbt()
{
m_SBList.DeleteAllItems();
SHOP::_RecordsetPtr pRst;
this->UpdateData(true);
SHOP::_CommandPtr cmd(__uuidof(SHOP::Command));
CString com;
_bstr_t condition;
condition = "%"+m_SBedit+"%";
try
{
if(m_SBcom == 0)
{
cmd->CommandText = "select * from BOOK where ISBN like ?";
cmd->CommandType = SHOP::adCmdText;
cmd->ActiveConnection = pConn;
SHOP::_ParameterPtr pParam = cmd->CreateParameter("ISBN",SHOP::adBSTR,SHOP::adParamInput,0);
cmd->Parameters->Append(pParam);
cmd->Parameters->GetItem("ISBN")->Value = condition;
pRst = cmd->Execute(0,0,SHOP::adCmdText);
}
if(m_SBcom == 1)
{
cmd->CommandText = "select * from BOOK where BOOKNAME like ?";
cmd->CommandType = SHOP::adCmdText;
cmd->ActiveConnection = pConn;
SHOP::_ParameterPtr pParam = cmd->CreateParameter("BOOKNAME",SHOP::adBSTR,SHOP::adParamInput,0);
cmd->Parameters->Append(pParam);
cmd->Parameters->GetItem("BOOKNAME")->Value = condition;
pRst = cmd->Execute(0,0,SHOP::adCmdText);
}
if(m_SBcom == 2)
{
cmd->CommandText = "select * from BOOK where AUTHOR like ?";
cmd->CommandType = SHOP::adCmdText;
cmd->ActiveConnection = pConn;
SHOP::_ParameterPtr pParam = cmd->CreateParameter("AUTHOR",SHOP::adBSTR,SHOP::adParamInput,0);
cmd->Parameters->Append(pParam);
cmd->Parameters->GetItem("AUTHOR")->Value = condition;
pRst = cmd->Execute(0,0,SHOP::adCmdText);
}
if(m_SBcom == 3)
{
cmd->CommandText = "select * from BOOK where CLASS like ?";
cmd->CommandType = SHOP::adCmdText;
cmd->ActiveConnection = pConn;
SHOP::_ParameterPtr pParam = cmd->CreateParameter("CLASS",SHOP::adBSTR,SHOP::adParamInput,0);
cmd->Parameters->Append(pParam);
cmd->Parameters->GetItem("CLASS")->Value = condition;
pRst = cmd->Execute(0,0,SHOP::adCmdText);
}
if(m_SBcom == 4)
{
cmd->CommandText = "select * from BOOK where PRESS like ?";
cmd->CommandType = SHOP::adCmdText;
cmd->ActiveConnection = pConn;
SHOP::_ParameterPtr pParam = cmd->CreateParameter("PRESS",SHOP::adBSTR,SHOP::adParamInput,0);
cmd->Parameters->Append(pParam);
cmd->Parameters->GetItem("PRESS")->Value = condition;
pRst = cmd->Execute(0,0,SHOP::adCmdText);
}
while(!pRst->End)
{
_variant_t vISBN = pRst->Fields->GetItem("ISBN")->Value;
_variant_t vNAME = pRst->Fields->GetItem(long(1))->Value;
_variant_t vCLASS = pRst->Fields->GetItem(long(2))->Value;
_variant_t vAUTHOR = pRst->Fields->GetItem(long(3))->Value;
_variant_t vPRESS = pRst->Fields->GetItem(long(4))->Value;
_variant_t vVER = pRst->Fields->GetItem(long(6))->Value;
_variant_t vPRICE = pRst->Fields->GetItem(long(7))->Value;
_variant_t vPAGES = pRst->Fields->GetItem(long(8))->Value;
_variant_t vVOLUME = pRst->Fields->GetItem(long(9))->Value;
CString m_isbn = vISBN.bstrVal;
CString m_name = vNAME.bstrVal;
CString m_class = vCLASS.bstrVal;
CString m_author = vAUTHOR.bstrVal;
CString m_press = vPRESS.bstrVal;
int m_ver = vVER.iVal;
int m_price = vPRICE.iVal;
int m_pages = vPAGES.iVal;
int m_volume = vVOLUME.iVal;
CString version,price,pages,volume;
version.Format("%d",m_ver);
price.Format("%d",m_price);
pages.Format("%d",m_pages);
volume.Format("%d",m_volume);
price.Insert(price.GetLength()-2,".");
m_SBList.InsertItem(0,m_isbn);
m_SBList.SetItemText(0,1,m_name);
m_SBList.SetItemText(0,2,m_author);
m_SBList.SetItemText(0,3,m_class);
m_SBList.SetItemText(0,4,m_press);
m_SBList.SetItemText(0,6,version);
m_SBList.SetItemText(0,7,volume);
m_SBList.SetItemText(0,8,pages);
m_SBList.SetItemText(0,9,price);
pRst->MoveNext();
}
pRst->Close();
pRst.Release();
}
catch(_com_error& e)
{
AfxMessageBox(e.Description());
}
}
void CSearchBook::OnDropdownSearchbookcom()
{
m_SBedit.Empty();
this->UpdateData(false);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -