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

📄 searchresultdlg.cpp

📁 VC下基于SQL的图书管理系统源代码
💻 CPP
字号:
// SearchResultDlg.cpp : implementation file
//

#include "stdafx.h"
#include "BookAdmi.h"
#include "SearchResultDlg.h"
#include "BookQueryDlg.h"
#include "MaintainDlg.h"
#include "_recordset.h"
#include "DetailDisDlg.h"
#include "ADOConn.h"
#include "BkInfoModifyDlg.h"
#include "AuInfoModifyDlg.h"
#include "BkClaInfoModifyDlg.h"

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

/////////////////////////////////////////////////////////////////////////////
// SearchResultDlg dialog


SearchResultDlg::SearchResultDlg(CWnd* pParent /*=NULL*/)
	: CDialog(SearchResultDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(SearchResultDlg)
	m_ed = 0;
	//}}AFX_DATA_INIT
}


void SearchResultDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(SearchResultDlg)
	DDX_Control(pDX, IDC_EDIT1, m_ct);
	DDX_Control(pDX, IDC_ADODC1, m_adodc);
	DDX_Text(pDX, IDC_EDIT1, m_ed);
	DDX_Control(pDX, IDC_DATAGRID1, m_datagrid);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(SearchResultDlg, CDialog)
	//{{AFX_MSG_MAP(SearchResultDlg)
	ON_BN_CLICKED(IDC_BUTTON1, OnButton1)
	ON_BN_CLICKED(IDC_BUTTON2, OnLook)
	ON_BN_CLICKED(IDCANCEL, OnDelete)
	ON_BN_CLICKED(IDOK, OnMdify)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// SearchResultDlg message handlers

void SearchResultDlg::OnButton1() 
{
	//QueryKind=dlg1.m_maintainTab.GetCurSel();
	BookQueryDlg dlg;
	dlg.ComboDataStyle;
	dlg.pSearchResult=this;
	dlg.QueryKind=QueryKind;
	dlg.DoModal();
	m_ed=QueryKind;
	UpdateData(false);
	CString strStyle,strSource;
	switch(QueryKind)
	{
	case 0:
		strSource="t_book";
		if(QueryStyle==0)
			strStyle="BookName";
		else
			strStyle="BookClaId";
		break;
	case 1:
		strSource="t_author";
		if(QueryStyle==0)
			strStyle="AuthorName";
		else
			strStyle="AuthorId";
		break;
	case 2:
		strSource="t_bookcla";
		if(QueryStyle==0)
			strStyle="BookClaId";
		else
			strStyle="BookClaName";
		break;
	}
	m_adodc.SetRecordSource("select * from "+strSource+" where "+strStyle+" like'%"+m_keyword+"%'");
	m_adodc.Refresh();
}



BOOL SearchResultDlg::OnInitDialog() 
{
	CDialog::OnInitDialog();
	MaintainDlg dlg;	
	// TODO: Add extra initialization here
	deadDelete=false;
	return TRUE;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}

void SearchResultDlg::OnLook() 
{
	// TODO: Add your control notification handler code here
	OnDblClickDatagrid1();
}

BEGIN_EVENTSINK_MAP(SearchResultDlg, CDialog)
    //{{AFX_EVENTSINK_MAP(SearchResultDlg)
	ON_EVENT(SearchResultDlg, IDC_DATAGRID1, -601 /* DblClick */, OnDblClickDatagrid1, VTS_NONE)
	//}}AFX_EVENTSINK_MAP
END_EVENTSINK_MAP()

void SearchResultDlg::OnDblClickDatagrid1() 
{
	if(m_adodc.GetRecordset().GetEof()==1)
	{
		MessageBox("没有数据");
		return;
	}
	CString strDetail;
	switch(QueryKind)
	{
	case 1:
		strDetail="作者编号:"+m_datagrid.GetItem(0)+"\r\n";
		strDetail+="作者姓名:"+m_datagrid.GetItem(1)+"\r\n";
		strDetail+="地址:"+m_datagrid.GetItem(2)+"\r\n";
		strDetail+="城市:"+m_datagrid.GetItem(3)+"\r\n";
		strDetail+="邮政编码:"+m_datagrid.GetItem(4)+"\r\n";
		strDetail+="电话:"+m_datagrid.GetItem(5)+"\r\n";
		strDetail+="传真:"+m_datagrid.GetItem(6)+"\r\n";
		strDetail+="E_mail:"+m_datagrid.GetItem(7)+"\r\n";
		strDetail+="备注:"+m_datagrid.GetItem(8)+"\r\n";
		//strDetail+="著作权年限:"+m_datagrid.GetItem(5)+"\r\n";
		break;
	case 2:
		strDetail="图书分类号:"+m_datagrid.GetItem(0)+"\r\n";
		strDetail+="图书分类名称:"+m_datagrid.GetItem(1)+"\r\n";		
		break;	
	default:
		strDetail="图书编号:"+m_datagrid.GetItem(0)+"\r\n";
		strDetail+="图书名称:"+m_datagrid.GetItem(1)+"\r\n";
		strDetail+="作者编号:"+m_datagrid.GetItem(2)+"\r\n";
		strDetail+="图书分类号:"+m_datagrid.GetItem(3)+"\r\n";
		strDetail+="出版社名称:"+m_datagrid.GetItem(4)+"\r\n";		
	//	strDetail+="作者姓名:"+m_datagrid.GetItem(1)+"\r\n";
		strDetail+="出版日期:"+m_datagrid.GetItem(5)+"\r\n";		
		strDetail+="页数:"+m_datagrid.GetItem(6)+"\r\n";
		strDetail+="定价:"+m_datagrid.GetItem(7)+"\r\n";		
		strDetail+="著作权年限:"+m_datagrid.GetItem(8)+"\r\n";
		strDetail+="出版号:"+m_datagrid.GetItem(9)+"\r\n";
	}
	UpdateData(false);
	DetailDisDlg dlg;
	dlg.m_DetailEdit=strDetail;	
	dlg.DoModal();
}

void SearchResultDlg::OnDelete() 
{
	if(deadDelete==false)
	if(MessageBox("确实要删除选中条目??",	"",MB_YESNO)==IDNO)
		return;
	_bstr_t sql;
	CString strSource,strId;
	switch(QueryKind)
	{
	case 1:
		strId="AuthorId";
		strSource="t_author";
		break;
	case 2:
		strId="BookClaId";
		strSource="t_bookcla";
		break;
	default:
		strId="BookId";
		strSource="t_book";
		break;
	}
	sql="delete from "+strSource+" where "+strId+"='"+m_datagrid.GetItem(0)+"'";
	ADOConn m_adoconn;
	m_adoconn.ExecuteSQL(sql);
	m_adodc.Refresh();
}

void SearchResultDlg::OnMdify() 
{
	AuInfoModifyDlg dlg1;
	BkInfoModifyDlg dlg;
	BkClaInfoModifyDlg dlg2;
	switch(QueryKind)
	{
	case 1:		
		dlg1.m_AuthorNameEdit=m_datagrid.GetItem(1);	
		dlg1.m_AuthorIdEdit=m_datagrid.GetItem(0);
		dlg1.OldAuthorId=m_datagrid.GetItem(0);
		dlg1.m_CityEdit=m_datagrid.GetItem(3);
		dlg1.m_AuthorAdrEdit=m_datagrid.GetItem(2);
		dlg1.m_PostNumEdit=m_datagrid.GetItem(4);
		dlg1.m_TelEdit=m_datagrid.GetItem(5);
		dlg1.m_FaxEdit=m_datagrid.GetItem(6);
		dlg1.m_EmailEdit=m_datagrid.GetItem(7);
		dlg1.m_RemarkEdit=m_datagrid.GetItem(8);
		UpdateData(false);
		dlg1.pSearchResultDlg=this;
		dlg1.DoModal();
		break;
	case 2:
		dlg2.m_BookClaIdEdit=m_datagrid.GetItem(0);
		dlg2.OldBookClaId=m_datagrid.GetItem(0);
		dlg2.m_BookClaNameEdit=m_datagrid.GetItem(1);
		UpdateData(false);
		dlg2.pSearchResultDlg=this;
		dlg2.DoModal();
		break;
	default:
		BkInfoModifyDlg dlg;
		dlg.m_BookIdEdit=m_datagrid.GetItem(0);
		dlg.OldBookId=m_datagrid.GetItem(0);
		dlg.m_BookNameEdit=m_datagrid.GetItem(1);	
		dlg.m_CopyRightEdit=m_datagrid.GetItem(8);
		dlg.m_PubCompanyEdit=m_datagrid.GetItem(4);
		dlg.m_PubNumEdit=m_datagrid.GetItem(9);
		dlg.m_AuthorIdEdit=m_datagrid.GetItem(2);
		dlg.m_BookClaIdEdit=m_datagrid.GetItem(3);
		dlg.m_BookPriceEdit=m_datagrid.GetItem(7);
		dlg.m_PubDateEdit=m_datagrid.GetItem(5);
		dlg.m_PageAmountEdit=m_datagrid.GetItem(6);
		UpdateData(false);
		dlg.pSearchResultDlg=this;
		dlg.DoModal();
		break;
	}
}

⌨️ 快捷键说明

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