📄 bookinfopage.cpp
字号:
// BookInfoPage.cpp : 实现文件
//
#include "stdafx.h"
#include "ECClient.h"
#include "BookInfoPage.h"
#include ".\bookinfopage.h"
#include "ClientSheetDlg.h"
#include "BuyDialog.h"
// CBookInfoPage 对话框
IMPLEMENT_DYNAMIC(CBookInfoPage, CPropertyPage)
CBookInfoPage::CBookInfoPage()
: CPropertyPage(CBookInfoPage::IDD)
, book_item_num(0)
, book_disp_pos(0)
{
}
CBookInfoPage::~CBookInfoPage()
{
}
void CBookInfoPage::DoDataExchange(CDataExchange* pDX)
{
CPropertyPage::DoDataExchange(pDX);
}
BEGIN_MESSAGE_MAP(CBookInfoPage, CPropertyPage)
ON_BN_CLICKED(IDC_BTN_BUY, OnBnClickedBtnBuy)
ON_BN_CLICKED(IDC_BTN_NEXT, OnBnClickedBtnNext)
ON_BN_CLICKED(IDC_BTN_PREV, OnBnClickedBtnPrev)
END_MESSAGE_MAP()
// CBookInfoPage 消息处理程序
BOOL CBookInfoPage::OnInitDialog()
{
CPropertyPage::OnInitDialog();
// TODO: 在此添加额外的初始化
memset(&books[0],0,MAX_BOOK_NUM*sizeof(Book));//清空书目数组
return TRUE;
}
int CBookInfoPage::SetBookInfo(Book& book)//保存书目信息
{//把书目信息保存在书目数组中
books[book_item_num].book_id = book.book_id;
strcpy(books[book_item_num].book_name,book.book_name);
strcpy(books[book_item_num].book_author,book.book_author);
strcpy(books[book_item_num].price,book.price);
books[book_item_num].left_num = book.left_num;
strcpy(books[book_item_num].priview,book.priview);
strcpy(books[book_item_num].publish_time,book.publish_time);
strcpy(books[book_item_num].publisher,book.publisher);
if(book_item_num==0)
DispBookInfo(book_item_num);//默认显示第一条书目信息
book_item_num++;
return 0;
}
BOOL CBookInfoPage::OnSetActive()
{
// TODO: 在此添加专用代码和/或调用基类
return CPropertyPage::OnSetActive();
}
void CBookInfoPage::OnBnClickedBtnBuy()//购书处理
{
// TODO: 在此添加控件通知处理程序代码
CBuyDialog buydlg;
INT_PTR nResponse = buydlg.DoModal();//显示购书窗口
if(nResponse == IDOK)
{
CClientSheetDlg* sheetDlg =(CClientSheetDlg*)GetParent();//得到CClientSheetDlg窗口指针
sheetDlg->BuyBook(atoi(buydlg.book_id.GetBuffer(0)),buydlg.book_name,buydlg.buy_num);
AfxMessageBox("购书成功! 您可以到[用户信息]栏查看购书情况");
}
}
void CBookInfoPage::OnBnClickedBtnNext()//显示下一条书目记录
{
// TODO: 在此添加控件通知处理程序代码
DispBookInfo(++book_disp_pos);//book_disp_pos指明当前显示的书目位置
}
int CBookInfoPage::DispBookInfo(int item_num)//在控件上显示书目信息
{
SetDlgItemInt(IDC_EDT_BOOK_ID,books[item_num].book_id);
SetDlgItemText(IDC_EDT_BOOK_NAME,books[item_num].book_name);
SetDlgItemText(IDC_EDT_BOOK_AUTHOR,books[item_num].book_author);
SetDlgItemText(IDC_EDT_PRICE,books[item_num].price);
SetDlgItemInt(IDC_EDT_LEFT_NUM,books[item_num].left_num);
SetDlgItemText(IDC_EDT_PRIVIEW,books[item_num].priview);
SetDlgItemText(IDC_EDT_PUBLISH_TIME,books[item_num].publish_time);
SetDlgItemText(IDC_EDT_PUBLISHER,books[item_num].publisher);
return 0;
}
void CBookInfoPage::OnBnClickedBtnPrev()//显示上一条书目记录
{
// TODO: 在此添加控件通知处理程序代码
if(book_disp_pos==0)
{
AfxMessageBox("已经是第一条记录");
return;
}
DispBookInfo(--book_disp_pos);//book_disp_pos指明当前显示的书目位置
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -