⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 showlog.cpp

📁 一个简单的银行管理程序 VC++实现
💻 CPP
字号:
// ShowLog.cpp : implementation file
//

#include "stdafx.h"
#include "BankSystem.h"
#include "ShowLog.h"
#include "BankSystemDlg.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CShowLog dialog


CShowLog::CShowLog(CWnd* pParent /*=NULL*/)
	: CDialog(CShowLog::IDD, pParent)
{
	//{{AFX_DATA_INIT(CShowLog)
	m_strUser = _T("");
	m_cTimeSt = 0;
	m_cTimeEd = 0;
	//}}AFX_DATA_INIT
}


void CShowLog::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CShowLog)
	DDX_Control(pDX, IDC_LIST1, m_list);
	DDX_Text(pDX, IDC_EDIT1, m_strUser);
	DDX_DateTimeCtrl(pDX, IDC_DATETIMEPICKER1, m_cTimeSt);
	DDX_DateTimeCtrl(pDX, IDC_DATETIMEPICKER2, m_cTimeEd);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CShowLog, CDialog)
	//{{AFX_MSG_MAP(CShowLog)
	ON_BN_CLICKED(IDC_BUTTON1, OnSearch)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CShowLog message handlers

void CShowLog::OnSearch() 
{
	// TODO: Add your control notification handler code here

	m_list.DeleteAllItems();

	UpdateData(true);

	_RecordsetPtr  m_pRec;
	_ConnectionPtr m_pCon;

	CBankSystemApp * pApp = (CBankSystemApp*)AfxGetApp();
	CBankSystemDlg * m_pMain = (CBankSystemDlg*)pApp->m_pMainWnd;
	m_pCon  =  m_pMain->m_pConnection;

	CString  strSQL;
	CString  m_strTimeSt,m_strTimeEd;
	
	if(m_strUser.IsEmpty())
		strSQL = "SELECT * FROM Log";
	else
	{
		strSQL = "SELECT * FROM Log where 操作账户1=";
		strSQL+= m_strUser;
	}

	m_pRec.CreateInstance(__uuidof(Recordset));
	m_pRec->Open(_variant_t(strSQL),m_pCon.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText);

	if(m_pRec->adoEOF)
	{
		m_pRec->Close();
		return;
	}
	
	log.OprTime  = (LPCSTR)_bstr_t(m_pRec->GetCollect("操作时间"));
	m_strTimeSt  = m_cTimeSt.Format("%y-%m-%d %H:%M:%S");
	m_strTimeEd  = m_cTimeEd.Format("%y-%m-%d %H:%M:%S");

    int i = 0;

	while(!m_pRec->adoEOF)
	{
		if(log.OprTime >= m_strTimeSt && log.OprTime <= m_strTimeEd)
		{

			log.OprTime  = (LPCSTR)_bstr_t(m_pRec->GetCollect("操作时间"));
			log.AcountA  = (LPCSTR)_bstr_t(m_pRec->GetCollect("操作账户1"));
			log.AcountB  = (LPCSTR)_bstr_t(m_pRec->GetCollect("操作账户2"));
			log.Operator = (LPCSTR)_bstr_t(m_pRec->GetCollect("操作员"));
			log.OprKind  = (LPCSTR)_bstr_t(m_pRec->GetCollect("操作类型"));
			log.OprMoney = (LPCSTR)_bstr_t(m_pRec->GetCollect("操作金额"));


			m_list.InsertItem(i,"i");
			m_list.SetItemText(i,0,log.OprKind);
			m_list.SetItemText(i,1,log.AcountA);
			m_list.SetItemText(i,2,log.AcountB);
			m_list.SetItemText(i,3,log.Operator);
			m_list.SetItemText(i,4,log.OprTime);
			m_list.SetItemText(i,5,log.OprMoney);
		}
		i++;
		m_pRec->MoveNext();
	}

	m_pRec->Close();

	
}

BOOL CShowLog::OnInitDialog() 
{
	CDialog::OnInitDialog();
	
	// TODO: Add extra initialization here
	 m_list.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES|LVS_EX_HEADERDRAGDROP);
     m_list.SetTextColor(RGB(0,0,255));                  //显示字体的颜色
     m_list.SetBkColor(RGB(240,247,233));             //选中此列的颜色
     m_list.SetTextBkColor(RGB(240,247,233));           //背景颜色

     m_list.InsertColumn(0,"操作类型");
	 m_list.InsertColumn(1,"操作账号1");
	 m_list.InsertColumn(2,"操作账号2");
	 m_list.InsertColumn(3,"操作员");
	 m_list.InsertColumn(4,"操作时间");
	 m_list.InsertColumn(5,"操作金额");

	 m_list.SetColumnWidth(0,80);
	 m_list.SetColumnWidth(1,100);
	 m_list.SetColumnWidth(2,100);
	 m_list.SetColumnWidth(3,80);
	 m_list.SetColumnWidth(4,120);
	 m_list.SetColumnWidth(5,80);
	
	return TRUE;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -