📄 stockinfor.cpp
字号:
// Stockinfor.cpp : implementation file
//
#include "stdafx.h"
#include "resource.h"
#include "Stockinfor.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CStockinfor dialog
CStockinfor::CStockinfor(CWnd* pParent /*=NULL*/)
: CDialog(CStockinfor::IDD, pParent)
{
//{{AFX_DATA_INIT(CStockinfor)
m_StockEdit = _T("");
m_StockCom = 0;
//}}AFX_DATA_INIT
}
void CStockinfor::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CStockinfor)
DDX_Control(pDX, IDC_STOCKLIST, m_StockList);
DDX_Text(pDX, IDC_STOCKEDIT, m_StockEdit);
DDX_CBIndex(pDX, IDC_STOCKCOM, m_StockCom);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CStockinfor, CDialog)
//{{AFX_MSG_MAP(CStockinfor)
ON_BN_CLICKED(IDC_STOCKBT, OnStockbt)
ON_CBN_DROPDOWN(IDC_STOCKCOM, OnDropdownStockcom)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CStockinfor message handlers
BOOL CStockinfor::OnInitDialog()
{
CDialog::OnInitDialog();
///初始化列表框
m_StockList.SetTextColor(RGB (0, 0, 0));
m_StockList.SetBkColor(RGB(255,255,255));
m_StockList.SetExtendedStyle(LVS_EX_GRIDLINES|LVS_EX_FULLROWSELECT);
m_StockList.InsertColumn(0,_T("ISBN"),LVCFMT_CENTER,100);
m_StockList.InsertColumn(1,_T("书名"),LVCFMT_CENTER,200);
m_StockList.InsertColumn(2,_T("数量"),LVCFMT_CENTER,80);
m_StockList.InsertColumn(3,_T("备注"),LVCFMT_CENTER,200);
OnRefreshData();
return TRUE;
}
void CStockinfor::OnRefreshData()
{
m_StockList.DeleteAllItems();
_variant_t vt;
try
{
SHOP::_RecordsetPtr pRst = pConn->Execute("select * from STOCK",&vt,SHOP::adCmdText);
while(!pRst->End)
{
_variant_t vISBN = pRst->Fields->GetItem("ISBN")->Value;
_variant_t vNAME = pRst->Fields->GetItem(long(1))->Value;
_variant_t vNUM = pRst->Fields->GetItem(long(2))->Value;
CString isbn = vISBN.bstrVal;
CString name = vNAME.bstrVal;
int num = vNUM.iVal;
CString strnum;
strnum.Format("%d",num);
m_StockList.InsertItem(0,isbn);
m_StockList.SetItemText(0,1,name);
m_StockList.SetItemText(0,2,strnum);
pRst->MoveNext();
}
pRst->Close();
pRst.Release();
}
catch(_com_error& e)
{
AfxMessageBox(e.Description());
}
}
void CStockinfor::OnStockbt()
{
m_StockList.DeleteAllItems();
SHOP::_RecordsetPtr pRst;
this->UpdateData(true);
SHOP::_CommandPtr cmd(__uuidof(SHOP::Command));
CString com;
_bstr_t condition;
condition = "%"+m_StockEdit+"%";
try
{
if(m_StockCom == 0)
{
cmd->CommandText = "select * from STOCK 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_StockCom == 1)
{
cmd->CommandText = "select * from STOCK where NAME like ?";
cmd->CommandType = SHOP::adCmdText;
cmd->ActiveConnection = pConn;
SHOP::_ParameterPtr pParam = cmd->CreateParameter("NAME",SHOP::adBSTR,SHOP::adParamInput,0);
cmd->Parameters->Append(pParam);
cmd->Parameters->GetItem("NAME")->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 vNUM = pRst->Fields->GetItem(long(2))->Value;
CString m_isbn = vISBN.bstrVal;
CString m_name = vNAME.bstrVal;
int m_num = vNUM.iVal;
CString num;
num.Format("%d",m_num);
m_StockList.InsertItem(0,m_isbn);
m_StockList.SetItemText(0,1,m_name);
m_StockList.SetItemText(0,2,num);
pRst->MoveNext();
}
pRst->Close();
pRst.Release();
}
catch(_com_error& e)
{
AfxMessageBox(e.Description());
}
}
void CStockinfor::OnDropdownStockcom()
{
m_StockEdit.Empty();
this->UpdateData(false);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -