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

📄 bookinfodlg.cpp

📁 < Visual C+++SQL Server数据库开发与实例>>一书中的实例核心源程序提供了几个案例的编程源代码。
💻 CPP
字号:
// BookInfoDlg.cpp : implementation file
//

#include "stdafx.h"
#include "LibDBS.h"
#include "BookInfoDlg.h"
#include "BookSet.h"

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

/////////////////////////////////////////////////////////////////////////////
// CBookInfoDlg dialog


CBookInfoDlg::CBookInfoDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CBookInfoDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CBookInfoDlg)
	m_strBookID = _T("");
	m_strBookName = _T("");
	m_strPress = _T("");
	m_strWriter = _T("");
	m_dPrice = 0.0;
	//}}AFX_DATA_INIT
}


void CBookInfoDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CBookInfoDlg)
	DDX_Text(pDX, IDC_STATIC_BOOKNO, m_strBookID);
	DDX_Text(pDX, IDC_STATIC_NAME, m_strBookName);
	DDX_Text(pDX, IDC_STATIC_PRESS, m_strPress);
	DDX_Text(pDX, IDC_STATIC_WRITER, m_strWriter);
	DDX_Text(pDX, IDC_EDIT_PRICE, m_dPrice);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CBookInfoDlg, CDialog)
	//{{AFX_MSG_MAP(CBookInfoDlg)
	ON_WM_CLOSE()
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CBookInfoDlg message handlers

BOOL CBookInfoDlg::OnInitDialog() 
{
	CDialog::OnInitDialog();
	
	// TODO: Add extra initialization here
	if(!m_database.IsOpen())
	{
		if(!m_database.Open(_T("Library")))
		{
			MessageBox("数据库打开出错!","图书信息!");
			OnOK();
			return FALSE;
		}
	}
	
	CBookSet *m_pset=new CBookSet(&m_database);
	CString strSQL;
	strSQL.Format("select * from Book_Info where Book_ID='%s'",m_strBookID);
	m_pset->Open(AFX_DB_USE_DEFAULT_TYPE,strSQL);

	if(m_pset->GetRecordCount()==0)
	{
		MessageBox("本馆没有这本书!","图书信息!");
		m_database.Close();
		OnOK();
		return FALSE;
	}
	//将书籍信息显示出来
	CDBVariant varValue;

	m_pset->GetFieldValue(1,m_strBookName);
	
	m_pset->GetFieldValue(2,m_strWriter);
	
	m_pset->GetFieldValue(3,m_strPress);
	
	m_pset->GetFieldValue(4,varValue);
	m_dPrice=varValue.m_dblVal;

	UpdateData(FALSE);
	m_pset->Close();
	m_database.Close();
	
	return TRUE;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}

void CBookInfoDlg::OnClose() 
{
	if(m_database.IsOpen())
		m_database.Close();
	OnOK();
}

⌨️ 快捷键说明

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