📄 querybasicdlg.cpp
字号:
// QueryBasicDlg.cpp : implementation file
//
#include "stdafx.h"
#include "LIBRARY.h"
#include "QueryBasicDlg.h"
#include "QueryAdvancedDlg.h"
#include "BookRS1.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CQueryBasicDlg dialog
CQueryBasicDlg::CQueryBasicDlg(CWnd* pParent /*=NULL*/)
: CDialog(CQueryBasicDlg::IDD, pParent)
{
//{{AFX_DATA_INIT(CQueryBasicDlg)
m_strKeyWord = _T("");
m_strKey = _T("");
m_strOrder = _T("");
//}}AFX_DATA_INIT
}
void CQueryBasicDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CQueryBasicDlg)
DDX_Control(pDX, IDC_LIST_RESULT, m_listResult);
DDX_Control(pDX, IDC_LIST_DETAIL, m_listDetail);
DDX_Text(pDX, IDC_KEY_WORD, m_strKeyWord);
DDX_CBString(pDX, IDC_SELKEY, m_strKey);
DDX_CBString(pDX, IDC_SELORDER, m_strOrder);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CQueryBasicDlg, CDialog)
//{{AFX_MSG_MAP(CQueryBasicDlg)
ON_BN_CLICKED(IDC_QUERY, OnQuery)
ON_LBN_SELCHANGE(IDC_LIST_RESULT, OnSelchangeListResult)
ON_BN_CLICKED(IDC_ADVANCED, OnAdvanced)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CQueryBasicDlg message handlers
void CQueryBasicDlg::OnQuery()
{
// TODO: Add your control notification handler code here
CString kw,odby;
UpdateData();
m_listResult.ResetContent();
if (! m_bookSet.IsOpen())
m_bookSet.Open();
if (m_strKey=="书号") kw="bno";
else if (m_strKey=="年份") kw="year";
else if (m_strKey=="类别") kw="category";
else if (m_strKey=="出版社") kw="press";
else if (m_strKey=="作者") kw="author";
else if (m_strKey=="价格") kw="price";
else if (m_strKey=="总藏书量") kw="totalnum";
else if (m_strKey=="现藏书量") kw="stockednum";
else kw="title";
if (m_strOrder=="升序") odby="asc";
else odby="desc";
m_bookSet.m_strFilter="title like '%"+m_strKeyWord+"%'";
m_bookSet.m_strSort=kw+" "+odby;
m_bookSet.Requery();
if (m_bookSet.IsEOF())
{
AfxMessageBox("对不起,没有找到相关的书籍,请检查输入。");
return;
}
while(! m_bookSet.IsEOF())
{
m_listResult.AddString(m_bookSet.m_title);
m_bookSet.MoveNext();
}
}
void CQueryBasicDlg::OnSelchangeListResult()
{
// TODO: Add your control notification handler code here
CString Title[9];
Title[0]="图书编号: ";
Title[1]="类别: ";
Title[2]="书名: ";
Title[3]="出版社: ";
Title[4]="出版年份: ";
Title[5]="作者: ";
Title[6]="价格: ";
Title[7]="总藏书量: ";
Title[8]="现藏数量: ";
m_listDetail.ResetContent();
int curSel;
CString strDetail;
CString strline;
curSel=m_listResult.GetCurSel();
m_bookSet.SetAbsolutePosition(curSel+1);
for (unsigned int i=0;i<m_bookSet.m_nFields;i++)
{
m_bookSet.GetFieldValue(i,strDetail);
strline.Empty();
strline+=Title[i];
strline+=strDetail;
m_listDetail.AddString(strline);
}
}
void CQueryBasicDlg::OnAdvanced()
{
// TODO: Add your control notification handler code here
CQueryBasicDlg::OnCancel();
CQueryAdvancedDlg advancedQuery;
advancedQuery.DoModal();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -