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

📄 bookborrowed.cpp

📁 一个图书管理程序 其中数据库部分需要自己设置 具体设置请参看源码
💻 CPP
字号:
// BookBorrowed.cpp : 实现文件
//

#include "stdafx.h"
#include "library.h"
#include "BookBorrowed.h"


// BookBorrowed 对话框

IMPLEMENT_DYNAMIC(BookBorrowed, CDialog)

BookBorrowed::BookBorrowed(CWnd* pParent /*=NULL*/)
	: CDialog(BookBorrowed::IDD, pParent)
	, m_borrow_cno(_T(""))
	, m_borrow_bno(_T(""))
{


}

BookBorrowed::~BookBorrowed()
{
}

void BookBorrowed::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	DDX_Text(pDX, IDC_Borrow_card, m_borrow_cno);
	DDX_Text(pDX, IDC_Borrow_BookNum, m_borrow_bno);
	DDX_Control(pDX, IDC_LIST_Borrowed, m_BorrowedList);
}


BEGIN_MESSAGE_MAP(BookBorrowed, CDialog)
	ON_BN_CLICKED(IDOK, &BookBorrowed::OnBnClickedOk)
END_MESSAGE_MAP()


// BookBorrowed 消息处理程序
BOOL BookBorrowed::OnInitDialog()
{
	BOOL res = CDialog::OnInitDialog();

	DWORD dwStyle, ExStyle;
	dwStyle = ::GetWindowLong(m_BorrowedList.m_hWnd,GWL_STYLE);
	// 设置为报表形式
	SetWindowLong(m_BorrowedList.m_hWnd,GWL_STYLE,dwStyle|LVS_REPORT);
	ExStyle = m_BorrowedList.GetExtendedStyle();
	// 设置为整栏选择和网格线
	m_BorrowedList.SetExtendedStyle(ExStyle|LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES);
	
	m_BorrowedList.InsertColumn(0, _T("卡号"), LVCFMT_LEFT, 60, -1);
	m_BorrowedList.InsertColumn(1, _T("书名"), LVCFMT_LEFT, 90, -1);
	m_BorrowedList.InsertColumn(2, _T("姓名"), LVCFMT_LEFT, 60, -1);
	m_BorrowedList.InsertColumn(3, _T("学院"), LVCFMT_LEFT, 60, -1);
	m_BorrowedList.InsertColumn(4, _T("类型"), LVCFMT_LEFT, 50, -1);
	m_BorrowedList.InsertColumn(5, _T("书号"), LVCFMT_LEFT, 60, -1);
	m_BorrowedList.InsertColumn(6, _T("作者"), LVCFMT_LEFT, 60, -1);
	m_BorrowedList.InsertColumn(7, _T("价格"), LVCFMT_LEFT, 60, -1);
	m_BorrowedList.InsertColumn(8, _T("借书日期"), LVCFMT_LEFT, 120, -1);


	return res;
}



void BookBorrowed::OnBnClickedOk()
{
	CString Borrowed[2]={(CString)"",(CString)""};
	CString strFilter=(CString)"";
	CString tmp;
	int Item;
	this->UpdateData();

	if(this->m_borrow_bno!="")
		Borrowed[0]=(CString)("bno like '%") + this->m_borrow_bno + (CString)("%'");

	if(this->m_borrow_cno!="") 
		Borrowed[1]=(CString)("cno like '%")+this->m_borrow_cno+ (CString)("%'");

	bool flag = true;   // 标记是否是第一个查询语句	

		// 将各个查询语句连接起来
	for (int i = 0; i <2; i++)
	{
		if (Borrowed[i] == "") continue;
		if (flag)
		{
			strFilter +=Borrowed[i];
			flag = false;
		}
		else
			strFilter += (CString)" or " + Borrowed[i];
	}
	if(!m_borrowSet.IsOpen())
		m_borrowSet.Open();
	if(!m_bookSet.IsOpen())
		m_bookSet.Open();
	if(!m_cardSet.IsOpen())
		m_cardSet.Open();

	m_borrowSet.m_strFilter=strFilter;
	m_borrowSet.Requery();



	m_BorrowedList.DeleteAllItems();
	
	while (!m_borrowSet.IsEOF())
		{
			m_bookSet.m_strFilter.Format((CString)("bno = '%s'"), (CString)m_borrowSet.m_bno);
			m_bookSet.Requery();
			m_cardSet.m_strFilter.Format((CString)("cno = '%s'"), (CString)m_borrowSet.m_cno);
			m_cardSet.Requery();



			if (!m_bookSet.IsEOF()&&!m_cardSet.IsEOF())
			{
				Item = m_BorrowedList.InsertItem(0,(LPCTSTR)(CString)m_borrowSet.m_cno);

				m_BorrowedList.SetItemText(Item, 1, (LPCTSTR)(CString)m_bookSet.m_title);
				
				m_BorrowedList.SetItemText(Item, 2, (LPCTSTR)(CString)m_cardSet.m_name);
				
				m_BorrowedList.SetItemText(Item, 3, (LPCTSTR)(CString)m_cardSet.m_department);

				m_BorrowedList.SetItemText(Item, 4, (LPCTSTR)(CString)m_cardSet.m_type);

				m_BorrowedList.SetItemText(Item, 5, (LPCTSTR)(CString)m_bookSet.m_bno);
		
				m_BorrowedList.SetItemText(Item, 6, (LPCTSTR)(CString)m_bookSet.m_author);

				tmp.Format(_T("%.2lf"), m_bookSet.m_price);
				m_BorrowedList.SetItemText(Item, 7, (LPCTSTR)tmp);

				m_BorrowedList.SetItemText(Item, 8, (LPCTSTR)(CString)m_borrowSet.m_borrow_date.Format("%Y-%m-%d %H:%M:%S"));
			}
			m_borrowSet.MoveNext();
		}
	m_borrowSet.Close();
	m_cardSet.Close();
	m_bookSet.Close();

}

⌨️ 快捷键说明

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